﻿;{ ;全局变量
    global TCPath
    global TCINI
    global TCMarkINI
    global ini

    Global ArrayVimComment
    Global ArrayTCComment
    Global ArrayVimMap
    
    Global TCListBox
    Global TCEdit 
    Global TInEdit 
    GLobal TCPanel1
    Global TCPanel2 
    Global TCPathPanel 
    Global TCPathPanelRight
    global CurrentFocus
    global LastView
;}

QZTC_Init(){    ;初始化
    global TCINI
    global ini
    TCPath := ini.TotalCommander_Config.TCPath
    TCINI := ini.TotalCommander_Config.TCINI
    
    global TCPath
    if !FileExist(TCPath) {
        Process, Exist, totalcmd.exe
        if ErrorLevel {
            WinGet, TCPath, ProcessPath, ahk_pid %ErrorLevel%
        } else {
            Process, Exist, totalcmd64.exe
            if ErrorLevel
                WinGet, TCPath, ProcessPath, ahk_pid %ErrorLevel%
        }
    }
    if TCPath and not FileExist(TCINI){
        SplitPath, TCPath, , dir
        TCINI := dir "\wincmd.ini"
    }
    if RegExMatch(TCPath, "i)totalcmd64\.exe$") {
        Global TCListBox := "LCLListBox"
        Global TCEdit := "Edit2"
        Global TInEdit := "TInEdit1"
        GLobal TCPanel1 := "Window1"
        Global TCPanel2 := "Window11"
        Global TCPathPanel := "TPathPanel2"
    } else {
        Global TCListBox := "TMyListBox"
        Global TCEdit := "Edit1"
        Global TInEdit := "TInEdit1"
        Global TCPanel1 := "TPanel1"
        Global TCPanel2 := "TMyPanel8"
        Global TCPathPanel := "TPathPanel1"
        Global TCPathPanelRight := "TPathPanel2"
    }
}
    
QZTC_VimComment(){  ;未使用
    Global ArrayVimComment:=[]
    ArrayVimComment["TC_NormalMode"] :="TC_VIM: 返回正常模式"
    ArrayVimComment["TC_InsertMode"] :="TC_VIM: 进入插入模式"
    ArrayVimComment["TC_ToggleTC"] :="TC_VIM: 打开/激活TC"
    ArrayVimComment["TC_FocusTCCmd"] :="TC_VIM: 激活TC，定位到命令行"
    ArrayVimComment["TC_azHistory"] :="TC_VIM: a-z历史导航"
    ArrayVimComment["TC_DownSelect"] :="TC_VIM: 向下选择"
    ArrayVimComment["TC_UpSelect"] :="TC_VIM: 向上选择"
    ArrayVimComment["TC_Mark"] :="TC_VIM: 标记功能"
    ArrayVimComment["TC_ForceDelete"] :="TC_VIM: 强制删除"
    ArrayVimComment["TC_ListMark"] :="TC_VIM: 显示标记"
    ArrayVimComment["TC_Toggle_50_100Percent"] :="TC_VIM: 切换当前窗口显示状态50%~100%"
    ArrayVimComment["TC_Toggle_50_100Percent_V"] :="TC_VIM: 切换当前（纵向）窗口显示状态50%~100%"
    ArrayVimComment["TC_WinMaxLeft"] :="TC_VIM: 最大化左侧窗口"
    ArrayVimComment["TC_WinMaxRight"] :="TC_VIM: 最大化右侧窗口"
    ArrayVimComment["TC_GoLastTab"] :="TC_VIM: 切换到最后一个标签"
    ArrayVimComment["TC_CopyNameOnly"] :="TC_VIM: 只复制文件名，不含扩展名"
    ArrayVimComment["TC_GotoLine"] :="TC_VIM: 移动到[count]行，默认第一行"
    ArrayVimComment["TC_LastLine"] :="TC_VIM: 移动到[count]行，默认最后一行"
    ArrayVimComment["TC_Half"] :="TC_VIM: 移动到窗口中间行"
    ArrayVimComment["TC_CreateNewFile"] :="TC_VIM: 文件模板"
    ArrayVimComment["TC_GoToParentEx"] :="TC_VIM: 返回到上层文件夹，可返回到我的电脑"
    ArrayVimComment["TC_AlwayOnTop"] :="TC_VIM: 设置TC顶置"
    ArrayVimComment["TC_OpenDriveThis"] :="TC_VIM: 打开驱动器列表:本侧"
    ArrayVimComment["TC_OpenDriveThat"] :="TC_VIM: 打开驱动器列表:另侧"
    ArrayVimComment["TC_MoveDirectoryHotlist"] :="TC_VIM: 移动到常用文件夹"
    ArrayVimComment["TC_CopyDirectoryHotlist"] :="TC_VIM: 复制到常用文件夹"
    ArrayVimComment["TC_GotoPreviousDirOther"] :="TC_VIM: 后退另一侧"
    ArrayVimComment["TC_GotoNextDirOther"] :="TC_VIM: 前进另一侧"
    ArrayVimComment["TC_SearchMode"] :="TC_VIM: 连续搜索"
    ArrayVimComment["TC_CopyUseQueues"] :="TC_VIM: 无需确认，使用队列拷贝文件至另一窗口"
    ArrayVimComment["TC_MoveUseQueues"] :="TC_VIM: 无需确认，使用队列移动文件至另一窗口"
    ArrayVimComment["TC_ViewFileUnderCursor"] :="TC_VIM: 使用查看器打开光标所在文件(shift+f3"
    ArrayVimComment["TC_OpenWithAlternateViewer"] :="TC_VIM: 使用外部查看器打开(alt+f3"
    ArrayVimComment["TC_ToggleShowInfo"] :="TC_VIM: 显示/隐藏 按键提示"
    ArrayVimComment["TC_ToggleMenu"] :="TC_VIM: 显示/隐藏: 菜单栏"
    ArrayVimComment["TC_SuperReturn"] :="TC_VIM: 同回车键，但定位到第一个文件"
    ArrayVimComment["TC_FileCopyForBak"] :="TC_VIM: 将当前光标下的文件复制一份作为作为备份"
    ArrayVimComment["TC_FileMoveForBak"] :="TC_VIM: 将当前光标下的文件重命名为备份"
    ArrayVimComment["TC_MultiFilePersistOpen"] :="TC_VIM: 多个文件一次性连续打开"
    ArrayVimComment["TC_CopyFileContents"] :="TC_VIM: 不打开文件就复制文件内容"
    ArrayVimComment["TC_OpenDirAndPaste"] :="TC_VIM: 不打开目录，直接把复制的文件贴进去"
    ArrayVimComment["TC_MoveSelectedFilesToPrevFolder"] :="TC_VIM: 将当前文件夹下的选定文件移动到上层目录中"
    ArrayVimComment["TC_MoveAllFilesToPrevFolder"] :="TC_VIM: 将当前文件夹下的全部文件移动到上层目录中"
    ArrayVimComment["TC_SrcQuickViewAndTab"] :="TC_VIM: 预览文件时,光标自动移到对侧窗口里"
    ArrayVimComment["TC_CreateFileShortcut"] :="TC_VIM: 创建当前光标下文件的快捷方式"
    ArrayVimComment["TC_CreateFileShortcutToDesktop"] :="TC_VIM: 创建当前光标下文件的快捷方式并发送到桌面"
    ArrayVimComment["TC_CreateFileShortcutToStartup"] :="TC_VIM: 创建当前光标下文件的快捷方式并发送到启动文件里"
    ArrayVimComment["TC_FilterSearchFNsuffix_exe"] :="TC_VIM: 在当前目录里快速过滤exe扩展名的文件"
    ArrayVimComment["TC_TwoFileExchangeName"] :="TC_VIM: 两个文件互换文件名"
    ArrayVimComment["TC_SelectCmd"] :="TC_VIM: 选择命令来执行"
    ArrayVimComment["TC_MarkFile"] :="TC_VIM: 标记文件，将文件注释改成m"
    ArrayVimComment["TC_UnMarkFile"] :="TC_VIM: 取消文件标记，将文件注释清空"
    ArrayVimComment["TC_ClearTitle"] :="TC_VIM: 将TC标题栏字符串设置为空"
    ArrayVimComment["TC_ReOpenTab"] :="TC_VIM: 重新打开之前关闭的标签页"
    ArrayVimComment["TC_OpenDirsInFile"] :="TC_VIM: 将光标所在的文件内容中的文件夹在新标签页依次打开"
    ArrayVimComment["TC_CreateBlankFile"] :="TC_VIM: 创建空文件"
    ArrayVimComment["TC_PasteFileEx"] :="TC_VIM: 粘贴文件，如果光标下为目录则粘贴进该目录"
}

QZTC_KeyMap(){  ;未使用
    ;【Search模式】
    vim.SetWin("TCQuickSearch", "TQUICKSEARCH")
    vim.mode("normal", "TCQuickSearch")
    vim.map("J", "<Down>", "TCQuickSearch")
    vim.map("K", "<Up>", "TCQuickSearch")
    ;vim.map("<esc>", "<TC_NormalMode>", "TCQuickSearch")

    vim.mode("insert", "TTOTAL_CMD")
    vim.SetTimeOut(800, "TTOTAL_CMD")
    vim.map("<esc>", "<TC_NormalMode>", "TTOTAL_CMD")

    vim.mode("search", "TTOTAL_CMD")
    vim.map("<esc>", "<TC_NormalMode>", "TTOTAL_CMD")

    vim.mode("normal", "TTOTAL_CMD")

    ;复制/移动到右侧 f取file的意思 filecopy
    vim.map("fc", "<QZTC_cm_CopyOtherpanel>", "TTOTAL_CMD")
    vim.map("fx", "<QZTC_cm_MoveOnly>", "TTOTAL_CMD")

    ;使用队列复制/移动到右侧 q-queue, fcq会影响对fc的使用，改用fqc/fqx的方式
    vim.map("fqc", "<TC_CopyUseQueues>", "TTOTAL_CMD")
    vim.map("fqx", "<TC_MoveUseQueues>", "TTOTAL_CMD")

    ;ff复制到剪切板 fz剪切到剪切板 fv粘贴
    vim.map("ff", "<QZTC_cm_CopyToClipboard>", "TTOTAL_CMD")
    vim.map("fz", "<QZTC_cm_CutToClipboard>", "TTOTAL_CMD")
    vim.map("fv", "<QZTC_cm_PasteFromClipboard>", "TTOTAL_CMD")

    ;fb复制到收藏夹某个目录，fd移动到收藏夹的某个目录
    vim.map("fb", "<TC_CopyDirectoryHotlist>", "TTOTAL_CMD")
    vim.map("fd", "<TC_MoveDirectoryHotlist>", "TTOTAL_CMD")
    vim.map("fg", "<QZTC_cm_CopySrcPathToClip>", "TTOTAL_CMD")
    vim.map("ft", "<QZTC_cm_SyncChangeDir>", "TTOTAL_CMD")
    vim.map("F", "<TC_SearchMode>", "TTOTAL_CMD")
    vim.map("gh", "<TC_GotoPreviousDirOther>", "TTOTAL_CMD")
    vim.map("gl", "<TC_GotoNextDirOther>", "TTOTAL_CMD")
    vim.map("Vh", "<QZTC_cm_SwitchIgnoreList>", "TTOTAL_CMD")
    vim.map("0", "<0>", "TTOTAL_CMD")
    vim.map("1", "<1>", "TTOTAL_CMD")
    vim.map("2", "<2>", "TTOTAL_CMD")
    vim.map("3", "<3>", "TTOTAL_CMD")
    vim.map("4", "<4>", "TTOTAL_CMD")
    vim.map("5", "<5>", "TTOTAL_CMD")
    vim.map("6", "<6>", "TTOTAL_CMD")
    vim.map("7", "<7>", "TTOTAL_CMD")
    vim.map("8", "<8>", "TTOTAL_CMD")
    vim.map("9", "<9>", "TTOTAL_CMD")
    vim.map("k", "<up>", "TTOTAL_CMD")
    vim.map("K", "<TC_UpSelect>", "TTOTAL_CMD")
    vim.map("j", "<down>", "TTOTAL_CMD")
    vim.map("J", "<TC_DownSelect>", "TTOTAL_CMD")
    vim.map("h", "<left>", "TTOTAL_CMD")
    vim.map("H", "<QZTC_cm_GotoPreviousDir>", "TTOTAL_CMD")
    vim.map("l", "<right>", "TTOTAL_CMD")
    vim.map("L", "<QZTC_cm_GotoNextDir>", "TTOTAL_CMD")
    vim.map("I", "<TC_CreateNewFile>", "TTOTAL_CMD")
    vim.map("i", "<TC_InsertMode>", "TTOTAL_CMD")
    vim.map("d", "<QZTC_cm_DirectoryHotlist>", "TTOTAL_CMD")
    vim.map("D", "<QZTC_cm_OpenDesktop>", "TTOTAL_CMD")
    vim.map("e", "<QZTC_cm_ContextMenu>", "TTOTAL_CMD")
    vim.map("E", "<QZTC_cm_ExeCuteDOS>", "TTOTAL_CMD")
    vim.map("n", "<TC_azHistory>", "TTOTAL_CMD")
    vim.map("m", "<TC_Mark>", "TTOTAL_CMD")
    vim.map("M", "<TC_Half>", "TTOTAL_CMD")
    vim.map("'", "<TC_ListMark>", "TTOTAL_CMD")
    vim.map("u", "<TC_GoToParentEx>", "TTOTAL_CMD")
    vim.map("U", "<QZTC_cm_GoToRoot>", "TTOTAL_CMD")
    vim.map("o", "<QZTC_cm_LeftOpenDrives>", "TTOTAL_CMD")
    vim.map("O", "<QZTC_cm_RightOpenDrives>", "TTOTAL_CMD")
    vim.map("q", "<QZTC_cm_SrcQuickView>", "TTOTAL_CMD")
    vim.map("r", "<QZTC_cm_RenameOnly>", "TTOTAL_CMD")
    vim.map("R", "<QZTC_cm_MultiRenameFiles>", "TTOTAL_CMD")
    vim.map("x", "<QZTC_cm_Delete>", "TTOTAL_CMD")
    vim.map("X", "<TC_ForceDelete>", "TTOTAL_CMD")
    vim.map("w", "<QZTC_cm_List>", "TTOTAL_CMD")
    vim.map("y", "<QZTC_cm_CopyNamesToClip>", "TTOTAL_CMD")
    vim.map("Y", "<QZTC_cm_CopyFullNamesToClip>", "TTOTAL_CMD")
    vim.map("P", "<QZTC_cm_PackFiles>", "TTOTAL_CMD")
    vim.map("p", "<QZTC_cm_UnpackFiles>", "TTOTAL_CMD")
    vim.map("t", "<QZTC_cm_OpenNewTab>", "TTOTAL_CMD")
    vim.map("T", "<QZTC_cm_OpenNewTabBg>", "TTOTAL_CMD")
    vim.map("/", "<QZTC_cm_ShowQuickSearch>", "TTOTAL_CMD")
    vim.map("?", "<QZTC_cm_SearchFor>", "TTOTAL_CMD")
    vim.map("[", "<QZTC_cm_SelectCurrentName>", "TTOTAL_CMD")
    vim.map("{", "<QZTC_cm_UnselectCurrentName>", "TTOTAL_CMD")
    vim.map("]", "<QZTC_cm_SelectCurrentExtension>", "TTOTAL_CMD")
    vim.map("}", "<QZTC_cm_UnSelectCurrentExtension>", "TTOTAL_CMD")
    vim.map("\", "<QZTC_cm_ExchangeSelection>", "TTOTAL_CMD")
    vim.map("|", "<QZTC_cm_ClearAll>", "TTOTAL_CMD")
    vim.map("-", "<QZTC_cm_SwitchSeparateTree>", "TTOTAL_CMD")
    vim.map("=", "<QZTC_cm_MatchSrc>", "TTOTAL_CMD")
    vim.map(",", "<QZTC_cm_SrcThumbs>", "TTOTAL_CMD")
    vim.map(";", "<QZTC_cm_DirectoryHotlist>", "TTOTAL_CMD")
    vim.map(":", "<QZTC_cm_FocusCmdLine>", "TTOTAL_CMD")
    vim.map("~", "<QZTC_cm_SysInfo>", "TTOTAL_CMD")
    vim.map("``", "<TC_ToggleShowInfo>", "TTOTAL_CMD")
    vim.map("G", "<TC_LastLine>", "TTOTAL_CMD")
    vim.map("ga", "<QZTC_cm_CloseAllTabs>", "TTOTAL_CMD")
    vim.map("gg", "<TC_GoToLine>", "TTOTAL_CMD")
    vim.map("g$", "<TC_LastLine>", "TTOTAL_CMD")

    ;与vim保持一致
    vim.map("gt", "<QZTC_cm_SwitchToNextTab>", "TTOTAL_CMD")
    vim.map("gT", "<QZTC_cm_SwitchToPreviousTab>", "TTOTAL_CMD")
    vim.map("gc", "<QZTC_cm_CloseCurrentTab>", "TTOTAL_CMD")
    vim.map("gb", "<QZTC_cm_OpenDirInNewTabOther>", "TTOTAL_CMD")
    vim.map("ge", "<QZTC_cm_Exchange>", "TTOTAL_CMD")
    vim.map("gr", "<TC_ReOpenTab>", "TTOTAL_CMD")
    vim.map("gw", "<QZTC_cm_ExchangeWithTabs>", "TTOTAL_CMD")
    vim.map("g1", "<QZTC_cm_SrcActivateTab1>", "TTOTAL_CMD")
    vim.map("g2", "<QZTC_cm_SrcActivateTab2>", "TTOTAL_CMD")
    vim.map("g3", "<QZTC_cm_SrcActivateTab3>", "TTOTAL_CMD")
    vim.map("g4", "<QZTC_cm_SrcActivateTab4>", "TTOTAL_CMD")
    vim.map("g5", "<QZTC_cm_SrcActivateTab5>", "TTOTAL_CMD")
    vim.map("g6", "<QZTC_cm_SrcActivateTab6>", "TTOTAL_CMD")
    vim.map("g7", "<QZTC_cm_SrcActivateTab7>", "TTOTAL_CMD")
    vim.map("g8", "<QZTC_cm_SrcActivateTab8>", "TTOTAL_CMD")
    vim.map("g9", "<QZTC_cm_SrcActivateTab9>", "TTOTAL_CMD")
    vim.map("g0", "<TC_GoLastTab>", "TTOTAL_CMD")
    vim.map("sn", "<QZTC_cm_SrcByName>", "TTOTAL_CMD")
    vim.map("se", "<QZTC_cm_SrcByExt>", "TTOTAL_CMD")
    vim.map("ss", "<QZTC_cm_SrcBySize>", "TTOTAL_CMD")
    vim.map("sd", "<QZTC_cm_SrcByDateTime>", "TTOTAL_CMD")
    vim.map("sr", "<QZTC_cm_SrcNegOrder>", "TTOTAL_CMD")
    vim.map("s1", "<QZTC_cm_SrcSortByCol1>", "TTOTAL_CMD")
    vim.map("s2", "<QZTC_cm_SrcSortByCol2>", "TTOTAL_CMD")
    vim.map("s3", "<QZTC_cm_SrcSortByCol3>", "TTOTAL_CMD")
    vim.map("s4", "<QZTC_cm_SrcSortByCol4>", "TTOTAL_CMD")
    vim.map("s5", "<QZTC_cm_SrcSortByCol5>", "TTOTAL_CMD")
    vim.map("s6", "<QZTC_cm_SrcSortByCol6>", "TTOTAL_CMD")
    vim.map("s7", "<QZTC_cm_SrcSortByCol7>", "TTOTAL_CMD")
    vim.map("s8", "<QZTC_cm_SrcSortByCol8>", "TTOTAL_CMD")
    vim.map("s9", "<QZTC_cm_SrcSortByCol9>", "TTOTAL_CMD")
    vim.map("s0", "<QZTC_cm_SrcUnsorted>", "TTOTAL_CMD")
    vim.map("v", "<QZTC_cm_SrcCustomViewMenu>", "TTOTAL_CMD")
    vim.map("Vb", "<QZTC_cm_VisButtonbar>", "TTOTAL_CMD")
    vim.map("Vm", "<TC_ToggleMenu>", "TTOTAL_CMD")
    vim.map("Vd", "<QZTC_cm_VisDriveButtons>", "TTOTAL_CMD")
    vim.map("Vo", "<QZTC_cm_VisTwoDriveButtons>", "TTOTAL_CMD")
    vim.map("Vr", "<QZTC_cm_VisDriveCombo>", "TTOTAL_CMD")
    vim.map("Vc", "<QZTC_cm_VisDriveCombo>", "TTOTAL_CMD")
    vim.map("Vt", "<QZTC_cm_VisTabHeader>", "TTOTAL_CMD")
    vim.map("Vs", "<QZTC_cm_VisStatusbar>", "TTOTAL_CMD")
    vim.map("Vn", "<QZTC_cm_VisCmdLine>", "TTOTAL_CMD")
    vim.map("Vf", "<QZTC_cm_VisKeyButtons>", "TTOTAL_CMD")
    vim.map("Vw", "<QZTC_cm_VisDirTabs>", "TTOTAL_CMD")
    vim.map("Ve", "<QZTC_cm_CommandBrowser>", "TTOTAL_CMD")
    vim.map("zz", "<TC_Toggle_50_100Percent>", "TTOTAL_CMD")
    vim.map("zh", "<TC_Toggle_50_100Percent_V>", "TTOTAL_CMD")
    vim.map("zi", "<TC_WinMaxLeft>", "TTOTAL_CMD")
    vim.map("zo", "<TC_WinMaxRight>", "TTOTAL_CMD")
    vim.map("zt", "<TC_AlwayOnTop>", "TTOTAL_CMD")
    vim.map("zn", "<QZTC_cm_Minimize>", "TTOTAL_CMD")
    vim.map("zm", "<QZTC_cm_Maximize>", "TTOTAL_CMD")
    vim.map("zr", "<QZTC_cm_Restore>", "TTOTAL_CMD")
    vim.map("zv", "<QZTC_cm_VerticalPanels>", "TTOTAL_CMD")

    vim.BeforeActionDo("TC_BeforeActionDo", "TTOTAL_CMD")

    ;; 默认按键完
    ;~ ReadNewFile()
}

QZTC_BeforeActionDo(){   ;未使用
    Global TC_SendPos
    Global TCListBox
    WinGet, MenuID, ID, AHK_CLASS #32768
    if MenuID And (TC_SendPos <> 572)
        return True
    ControlGetFocus, ctrl, AHK_CLASS TTOTAL_CMD
    Ifinstring, ctrl, %TCListBox%
        return False
    return True
}

TC_NormalMode(){    ;切换到【普通模式】，未使用
    Send, {Esc}
    vimd.changemode("普通模式")
}

TC_SearchMode(){     ;切换到【普通模式】，未使用
    vimd.changemode("普通模式")
}

TC_InsertMode(){      ;切换到【insert模式】，未使用
    vimd.changemode("insert模式")
}

TC_ToggleTC(){
    IfWinExist, AHK_CLASS TTOTAL_CMD 
    {
        WinGet, AC, MinMax, AHK_CLASS TTOTAL_CMD
        if Ac = -1
            Winactivate, AHK_ClASS TTOTAL_CMD
        else
            Ifwinnotactive, AHK_CLASS TTOTAL_CMD
                Winactivate, AHK_CLASS TTOTAL_CMD
            else
                Winminimize, AHK_CLASS TTOTAL_CMD
    } else  {
        Run, %TCPath%
        Loop, 4
        {
            IfWinNotActive, AHK_CLASS TTOTAL_CMD
                WinActivate, AHK_CLASS TTOTAL_CMD
            else
                Break
            Sleep, 500
        }
    }
}

QZTC_FocusTC(){ ;激活TC
    IfWinExist, AHK_CLASS TTOTAL_CMD
        Winactivate, AHK_ClASS TTOTAL_CMD
    else  {
        Run, %TCPath%
        Loop, 4
        {
            IfWinNotActive, AHK_CLASS TTOTAL_CMD
                WinActivate, AHK_CLASS TTOTAL_CMD
            else
                Break
            Sleep, 500
        }
    }
}

TC_FocusTCCmd(){ ;激活TC，并定位到命令行
    QZTC_FocusTC()
    QZTC_SendPos(4003)
}

TC_Timer_AUTHTC: ;{
    QZTC_AUTHTC()
return
;}

QZTC_AUTHTC(){
    WinGetText, string, ahk_class TNASTYNAGSCREEN
    if Strlen(string)
    {
        RegExMatch(string, "\d", idx)
        ControlClick, TButton%idx%, ahk_class TNASTYNAGSCREEN, , , , NA
        settimer, TC_Timer_AUTHTC, off
    }
}

TC_azHistory(){     ;历史记录
    global ini
    global TCPath
    global TCINI
    QZTC_cm_ConfigSaveDirHistory()
    sleep, 200
    history := ""
    if Mod(QZTC_LeftRight(), 2) {
        f := ini.redirect.LeftHistory
        if FileExist(f)
            IniRead, history, %f%, LeftHistory
        else
            IniRead, history, %TCINI%, LeftHistory
        if RegExMatch(history, "RedirectSection=(.+)", HistoryRedirect) {
            StringReplace, HistoryRedirect1, HistoryRedirect1, `%COMMANDER_PATH`%, %TCPath%\..
            IniRead, history, %HistoryRedirect1%, LeftHistory
        }
    } else  {
        f := ini.redirect.RightHistory
        if FileExist(f)
            IniRead, history, %f%, RightHistory
        else
            IniRead, history, %TCINI%, RightHistory
        if RegExMatch(history, "RedirectSection=(.+)", HistoryRedirect) {
            StringReplace, HistoryRedirect1, HistoryRedirect1, `%COMMANDER_PATH`%, %TCPath%\..
            IniRead, history, %HistoryRedirect1%, RightHistory
        }
    }
    ;MsgBox, %f%_%TCINI%_%history%
    history_obj := []
    Global history_name_obj := []
    Loop, Parse, history, `n
        max := A_index
    Loop, Parse, history, `n
    {
        idx := RegExReplace(A_LoopField, "=.*$")
        value := RegExReplace(A_LoopField, "^\d\d?=")
        ;避免&被识别成快捷键
        name := StrReplace(value, "&", ":＆:")
        ;~ name := "(&"  chr(idx+65) ")  " . name
        if RegExMatch(Value, "::\{20D04FE0\-3AEA\-1069\-A2D8\-08002B30309D\}\|")  {
            name  := RegExReplace(Value, "::\{20D04FE0\-3AEA\-1069\-A2D8\-08002B30309D\}\|")
            value := 2122
        }
        if RegExMatch(Value, "::\|") {
            name  := RegExReplace(Value, "::\|")
            value := 2121
        }
        if RegExMatch(Value, "::\{21EC2020\-3AEA\-1069\-A2DD\-08002B30309D\}\\::\{2227A280\-3AEA\-1069\-A2DE\-08002B30309D\}\|")  {
            name  :=  RegExReplace(Value, "::\{21EC2020\-3AEA\-1069\-A2DD\-08002B30309D\}\\::\{2227A280\-3AEA\-1069\-A2DE\-08002B30309D\}\|")
            value := 2126
        }
        if RegExMatch(Value, "::\{208D2C60\-3AEA\-1069\-A2D7\-08002B30309D\}\|") { ;NothingIsBig的是XP系统，网上邻居是这个调整
            name := RegExReplace(Value, "::\{208D2C60\-3AEA\-1069\-A2D7\-08002B30309D\}\|")
            value := 2125
        }
        if RegExMatch(Value, "::\{F02C1A0D\-BE21\-4350\-88B0\-7367FC96EF3C\}\|"){
            name := RegExReplace(Value, "::\{F02C1A0D\-BE21\-4350\-88B0\-7367FC96EF3C\}\|")
            value := 2125
        }
        if RegExMatch(Value, "::\{26EE0668\-A00A\-44D7\-9371\-BEB064C98683\}\\0\|"){
            name := RegExReplace(Value, "::\{26EE0668\-A00A\-44D7\-9371\-BEB064C98683\}\\0\|")
            value := 2123
        }
        if RegExMatch(Value, "::\{645FF040\-5081\-101B\-9F08\-00AA002F954E\}\|"){
            name := RegExReplace(Value, "::\{645FF040\-5081\-101B\-9F08\-00AA002F954E\}\|")
            value := 2127
        }
        name .= A_Tab "[&"  chr(idx+65) "]"
        history_obj[idx] := name
        history_name_obj[name] := value
    }
    Menu, az, UseErrorLevel
    Menu, az, add
    Menu, az, deleteall
    size := TCConfig.GetValue("TotalCommander_Config", "MenuIconSize")
    if not size
        size := 20
    Loop, %max%
    {
        idx := A_Index - 1
        name := history_obj[idx]
        Menu, az, Add, %name%, TC_MenuHalder_azHistorySelect
        Menu, az, icon, %name%, %A_ScriptDir%\Lib\a-zhistory.icl, %A_Index%, %size%
    }
    ControlGetFocus, TLB, ahk_class TTOTAL_CMD
    ControlGetPos, xn, yn, wn, , %TLB%, ahk_class TTOTAL_CMD
    Menu, az, show, %xn%, %yn%
    return
    
    TC_MenuHalder_azHistorySelect:
        ;~ TC_azHistorySelect()
        Global TCEdit 
        if ( history_name_obj[A_ThisMenuItem] = 2122 ) or RegExMatch(A_ThisMenuItem, "::\{20D04FE0\-3AEA\-1069\-A2D8\-08002B30309D\}")
            QZTC_cm_OpenDrives()
        else if ( history_name_obj[A_ThisMenuItem] = 2121 ) or RegExMatch(A_ThisMenuItem, "::(?!\{)")
            QZTC_cm_OpenDesktop()
        else if ( history_name_obj[A_ThisMenuItem] = 2126 ) or RegExMatch(A_ThisMenuItem, "::\{21EC2020\-3AEA\-1069\-A2DD\-08002B30309D\}\\::\{2227A280\-3AEA\-1069\-A2DE\-08002B30309D\}")
            QZTC_cm_OpenPrinters()
        else if ( history_name_obj[A_ThisMenuItem] = 2125 ) or RegExMatch(A_ThisMenuItem, "::\{F02C1A0D\-BE21\-4350\-88B0\-7367FC96EF3C\}") or RegExMatch(A_ThisMenuItem, "::\{208D2C60\-3AEA\-1069\-A2D7\-08002B30309D\}\|") ;NothingIsBig的是XP系统，网上邻居是这个调整
            QZTC_cm_OpenNetwork()
        else if ( history_name_obj[A_ThisMenuItem] = 2123 ) or RegExMatch(A_ThisMenuItem, "::\{26EE0668\-A00A\-44D7\-9371\-BEB064C98683\}\\0")
            QZTC_cm_OpenControls()
        else if ( history_name_obj[A_ThisMenuItem] = 2127 ) or RegExMatch(A_ThisMenuItem, "::\{645FF040\-5081\-101B\-9F08\-00AA002F954E\}")
            QZTC_cm_OpenRecycled()
        else {
            ThisMenuItem := RegExReplace(A_ThisMenuItem, "\t.*$")
            ThisMenuItem := StrReplace(ThisMenuItem, ":＆:", "&")            
            ControlSetText, %TCEdit%, cd %ThisMenuItem%, ahk_class TTOTAL_CMD
            ControlSend, %TCEdit%, {enter}, ahk_class TTOTAL_CMD
            ControlGetFocus, Ctrl, AHK_CLASS TTOTAL_CMD
            Postmessage, 0x19E, 1, 1, %Ctrl%, AHK_CLASS TTOTAL_CMD
        }
    return
}

TC_DownSelect(){    ;向下添加选择
    Send +{Down}
}

TC_UpSelect(){  ;向上添加选择
    Send +{Up}
}

TC_WinMaxLeft(){    ;最大化左侧面板
    QZTC_WinMaxLR(true)
}

TC_WinMaxRight(){       ;最大化右侧面板
    QZTC_WinMaxLR(false)
}

QZTC_WinMaxLR(lr){      ;最大化面板-主函数
    ControlGetPos, , ,wBar,hBar,TPanel1,ahk_class TTOTAL_CMD
	ControlGetFocus,CurrentFocus,ahk_class TTOTAL_CMD
	If (wBar <= hBar){
        if lr
            QZTC_GoPercentX(1)
        else
            QZTC_GoPercentX(0)
    } else {
        if lr
            QZTC_GoPercentY(1)
        else
            QZTC_GoPercentY(0)
    }
}

QZTC_GoPercentX(Percent:=0.5) {	;改变左右方向的比例
	WinGetPos, , , wTC, ,ahk_class TTOTAL_CMD
	ControlMove,TPanel1, Round(Percent*wTC), , , ,ahk_class TTOTAL_CMD
	ControlClick,TPanel1,ahk_class TTOTAL_CMD
	WinActivate ahk_class TTOTAL_CMD
	return
}

QZTC_GoPercentY(Percent:=0.5) {	;改变上下方向的比例
	WinGetPos, , , , hTC,ahk_class TTOTAL_CMD
	ControlMove,TPanel1, , Round(Percent*hTC), , ,ahk_class TTOTAL_CMD
	ControlClick,TPanel1,ahk_class TTOTAL_CMD
	WinActivate ahk_class TTOTAL_CMD
	return
}

/* ;QZTC_WinMaxLR
QZTC_WinMaxLR(lr){
    if lr {
        msgbox TCPanel2 : %TCPanel2%
        
        ControlGetPos, x, y, w, h, %TCPanel2%, ahk_class TTOTAL_CMD
        ControlGetPos, tm1x, tm1y, tm1W, tm1H, %TCPanel1%, ahk_class TTOTAL_CMD
        if (tm1w < tm1h) { ; 判断纵向还是横向 Ture为竖 false为横
            ControlMove, %TCPanel2%, x+w, , , , ahk_class TTOTAL_CMD
        } else {
            ControlMove, %TCPanel2%, 0, y+h, , , ahk_class TTOTAL_CMD
            ControlClick, %TCPanel2%, ahk_class TTOTAL_CMD
            WinActivate ahk_class TTOTAL_CMD
        }
    } else {
        ControlMove, %TCPanel1%, 0, 0, , , ahk_class TTOTAL_CMD
        ControlClick, %TCPanel1%, ahk_class TTOTAL_CMD
        WinActivate ahk_class TTOTAL_CMD
    }
}
*/

TC_GoLastTab(){     ;定位最后一个标签
    QZTC_cm_SrcActivateTab1()
    QZTC_cm_SwitchToPreviousTab()
}

TC_CopyNameOnly(){  ;仅复制文件名，不含后缀
    clipboard :=
    QZTC_cm_CopyNamesToClip()
    ClipWait
    if Not RegExMatch(clipboard, "^\..*"){
        clipboard := RegExReplace(clipboard, "m)\.[^.]*$")
        clipboard := RegExReplace(clipboard, "m)\\$")
    }
}

TC_Delete(){ ; 删除
    Send {Delete}
    SetTimer TC_Timer_WaitMenuPop_Delete
    return
    
    ;~ TC_Timer_WaitMenuPop_Delete:
        ;~ winget, menupop, , ahk_class #32770
        ;~ if menupop{
            ;~ SetTimer, TC_Timer_WaitMenuPop_Delete , Off
            ;~ send,{enter}
        ;~ }
    ;~ return
    
    TC_Timer_WaitMenuPop_Delete:
        winget, menupop, , ahk_class #32770
        if menupop{
            SetTimer, TC_Timer_WaitMenuPop_Delete , Off
            send,{enter}
            sleep,300
            ;~ SetTimer, TC_Timer_WaitMenuOff_Delete
        } 
    return
    
    ;~ TC_Timer_WaitMenuOff_Delete: 
        ;~ winget, menupop, , ahk_class #32770
        ;~ if not menupop{
            ;~ SetTimer, TC_Timer_WaitMenuOff_Delete, off
            ;~ SetTimer, TC_Timer_WaitMenuPop_Delete , Off
        ;~ } 
    ;~ return
}

TC_ForceDelete(){ ; 强制删除
    Send +{Delete}
}

TC_DeleteByExt_Picture(){ ;删除文件-图片
    Exts:="jpg,jpeg,gif,png"
    TC_DeleteByExt(Exts)
}

TC_DeleteByExt_GUI(){ ;删除文件-界面选择类型
    ;Label_My_global_and_PreDefined_Var:
    Global TCPath
    Splitpath, TCPath, , TCDir
    global batchDelete_INI:=TCDir . "\batchDelete.ini"
	global batchDelete_List:=
	global batchDelete_Exts:=
	
    ;Label_Start:
	IfNotExist,%batchDelete_INI%
	{
		batchDelete_Txt=
		(Ltrim
		[批量列表]
		类型1=jpg,jpeg,gif,png
		类型2=torrent,txt,html,url
		类型3=
		[后缀名列表]
		图片=bmp,tif,jpg,png,gif,jpeg,tiff
		视频=flv,mp4,mpg,rm,mpeg,avi,rmvb,dat,mkv,wmv
		音频=mp3,cue,mid,wav,wma,ape,flac
		压缩文件=gt,rar,zip,7z,bds
		文本文件=txt,xml,bat,vbs,vba,lst,ini,bas,json,md,ahk
		Office文件=doc,docx,rtf,xls,xlsx,xlsm,ppt,pptx
		网页文件=html,htm,mht,url
		其他文件=bak,torrent
		)
		fileappend,%batchDelete_Txt%,%batchDelete_INI%
	}	
	IniRead,batchDelete_List,%batchDelete_INI%,批量列表
	IniRead,batchDelete_Exts,%batchDelete_INI%,后缀名列表
    ;Label_DrawGui: {
	;Gui,-Caption
    Gui,Destroy
	Gui Font, s12	
	loop,Parse,% batchDelete_List,`n,`r
	{
		if (A_LoopField="")
			continue
		TemStr:="(&" a_index ") " substr(A_LoopField,5)
		if (a_index=1)
			Gui Add, Radio, x15 y15 h23 gbatchDelete_DeleteList,%TemStr%
		else
			Gui Add, Radio, x15 yp+25 h23 gbatchDelete_DeleteList,%TemStr%
	}
	loop,Parse,% batchDelete_Exts ,`n,`r
	{
		if (A_LoopField="")
			continue
		ExtsString:=A_LoopField
		MyVar_Key:=RegExReplace(ExtsString,"=.*?$") 
		MyVar_Val:=RegExReplace(ExtsString,"^.*?=") 
		if (MyVar_Key && MyVar_Val) 
		{
			Gui Add, Text, x15 yp+30  h23 , %MyVar_Key%
			loop,parse,% MyVar_Val,`,,`r
			{
				if (a_index=1)
					Gui Add, checkbox, xp+80 yp-3  h23 gbatchDelete_AddExts,%A_LoopField%
				else
					Gui Add, checkbox, xp+80 yp  h23 gbatchDelete_AddExts,%A_LoopField%
			}
		}
	}
	Gui Add, Text, x15 yp+30 , 文件后缀
	Gui Add, Edit, x90 yp-3 w600 vbatchDelete_Exts, 
	Gui Font
	Gui Font, s12
	Gui Add, Button, x90 yp+30 w100 h40 Default  gbatchDelete_OK, (&Z) 确认
	Gui Add, Button, xp+150 yp w100 h40 gbatchDelete_Cancel, 取消

	;~ Gui Add, Button, xp+200 yp w100 h40 gbatchDelete_SelNone, 全不选
	Gui Add, Button, xp+130 yp w30 h40 gbatchDelete_EidtINI, `>`>
	;~ Gui Show
	Gui Show, AutoSize Center,删除指定类型文件
    return

    batchDelete_DeleteList:
        if(A_GuiControlEvent="Normal"){
            CurExts:=A_GuiControl
            CurExts:=substr(CurExts,6)
            guicontrol,,batchDelete_Exts,%CurExts%
        }else if (A_GuiEvent="DoubleClick"){
            CurExts:=A_GuiControl
            CurExts:=substr(CurExts,6)
            TC_DeleteByExt(CurExts)
            gui,Destroy
        }
    return

    batchDelete_AddExts:
        if(A_GuiControlEvent="Normal"){
            CurExts:=A_GuiControl
            GuiControlGet,CheckStatus,,%CurExts%
            guicontrolget,OutputExts,,batchDelete_Exts
            if (CheckStatus=1){	;选中
                ;~ if instr(OutputExts,CurExts)
                if CurExts in %OutputExts%
                    return
                else 
                    OutputExts.= "," CurExts
            } else {
                if CurExts in %OutputExts%
                    OutputExts:=StrReplace(OutputExts,CurExts,"")
            }
            OutputExts:=RegExReplace(OutputExts,",{2,}",",")
            OutputExts:=RegExReplace(OutputExts,"^,","")
            OutputExts:=RegExReplace(OutputExts,",$","")
            guicontrol,,batchDelete_Exts,%OutputExts%
        }
    return

    batchDelete_OK:
        guicontrolget,OutputExts,,batchDelete_Exts
        TC_DeleteByExt(CurExts)
        gui,Destroy
    return

    batchDelete_Cancel:
        gui,Destroy
    return

    batchDelete_SelNone:
        
    return

    batchDelete_EidtINI:
        gui,Destroy
        run,%batchDelete_INI%
    return
}

TC_DeleteByExt(Exts:="",DefDir:=""){ ;删除指定类型文件
    
    if(Exts="")
        return
    if(DefDir=""){
        QZTC_SendPos(332)   ;光标定位到焦点地址栏
        sleep 100
        QZTC_SendPos(2029)   ;获取路径
        sleep 100
        DefDir:=Clipboard
    }
    loop,files,%DefDir%\*.*
    {
        if (instr(Exts,a_loopfileext))
            filedelete,%A_LoopFileFullPath%
    }
    QZTC_SendPos(540)   ;刷新来源面板
}

TC_GotoDefLine(){ ;转到[count]行, 缺省第一行
    InputBox,MyTemInput,请输入行号,,,200,100
    if ErrorLevel
        return
    if (MyTemInput="")
        return
    if (MyTemInput/1>0)
        TC_GotoLine(MyTemInput)
    else
        TC_GotoLine(1)
}

TC_FirstLine(){ ; 转到第一行
    TC_GotoLine(1)
}

TC_LastLine(){ ; 转到最后一行
    ;~ if ( count := vim.GetCount("TTOTAL_CMD")) > 1
        ;~ TC_GotoLine(count)
    ;~ else
        TC_GotoLine(0)
}

TC_GotoLine(Index){
    Vim_HotKeyCount := 0
    ControlGetFocus, Ctrl, AHK_CLASS TTOTAL_CMD
    if Index{
        ;Index--
        ControlGet, text, List, , %ctrl%, AHK_CLASS TTOTAL_CMD
        Stringsplit, T, Text, `n
        Last := T0 - 1
        if Index > %Last%
            Index := Last
        Postmessage, 0x19E, %Index%, 1, %Ctrl%, AHK_CLASS TTOTAL_CMD
    } else {
        ControlGet, text, List, , %ctrl%, AHK_CLASS TTOTAL_CMD
        Stringsplit, T, Text, `n
        Last := T0 - 1
        PostMessage, 0x19E, %Last% , 1 , %CTRL%, AHK_CLASS TTOTAL_CMD
    }
}

TC_Half(){ ; 移动到窗口中间
    winget, tid, id, ahk_class TTOTAL_CMD
    controlgetfocus, ctrl, ahk_id %tid%
    controlget, cid, hwnd, , %ctrl%, ahk_id %tid%
    controlgetpos, x1, y1, w1, h1, THeaderClick2, ahk_id %tid%
    controlgetpos, x, y, w, h, %ctrl%, ahk_id %tid%
    SendMessage, 0x01A1, 1, 0, , ahk_id %cid%
    Hight := ErrorLevel
    SendMessage, 0x018E, 0, 0, , ahk_id %cid%
    Top := ErrorLevel
    HalfLine := Ceil( ((h-h1)/Hight)/2 ) + Top
    PostMessage, 0x19E, %HalfLine%, 1, , AHK_id %cid%
}

TC_Mark(){ ; 标记功能
    vimd.changemode("普通模式")
    QZTC_cm_FocusCmdLine()
    ControlGet, EditId, Hwnd, , AHK_CLASS TTOTAL_CMD
    ControlSetText, %TCEdit%, m, AHK_CLASS TTOTAL_CMD
    Postmessage, 0xB1, 2, 2, %TCEdit%, AHK_CLASS TTOTAL_CMD
    SetTimer, TC_timer_MarkTimer, 100
    return
    
    TC_timer_MarkTimer: 
        QZTC_MarkTimer()
    return
}

QZTC_MarkTimer(){
    ControlGetFocus, ThisControl, AHK_CLASS TTOTAL_CMD
    ControlGetText, OutVar, %TCEdit%, AHK_CLASS TTOTAL_CMD
    Match_TCEdit := "i)^" . TCEdit . "$"
    if Not RegExMatch(ThisControl, Match_TCEdit) OR Not RegExMatch(Outvar, "i)^m.?") {
        vimd.changemode("VIM模式")
        Settimer, TC_timer_MarkTimer, Off
        return
    }
    if RegExMatch(OutVar, "i)^m.+"){
        vimd.changemode("VIM模式")
        SetTimer, TC_timer_MarkTimer, off
        ControlSetText, %TCEdit%, , AHK_CLASS TTOTAL_CMD
        ControlSend, %TCEdit%, {Esc}, AHK_CLASS TTOTAL_CMD
        ClipSaved := ClipboardAll
        Clipboard :=
        Postmessage 1075, 2029, 0, , ahk_class TTOTAL_CMD
        ClipWait
        Path := Clipboard
        Clipboard := ClipSaved
        if StrLen(Path) > 80{
            SplitPath, Path, , PathDir
            Path1 := SubStr(Path, 1, 15)
            Path2 := SubStr(Path, RegExMatch(Path, "\\[^\\]*$")-Strlen(Path))
            Path := Path1 . "..." . SubStr(Path2, 1, 65) "..."
        }
        m := SubStr(OutVar, 2, 1)
        mPath := "&" . m . " >> " . Path
        if RegExMatch(Mark["ms"], m){
            DelM := Mark[m]
            Menu, MarkMenu, Delete, %DelM%
            Menu, MarkMenu, Add, %mPath%, TC_MenuHalder_AddMark
            Mark[m] := mPath
            if (SaveMark <> 0){
                IniWrite, %mPath%, %TCMarkINI%, mark, %m%
            }
        } else{
            Menu, MarkMenu, Add, %mPath%, TC_MenuHalder_AddMark
            marks := Mark["ms"] . m
            Mark["ms"] := marks
            Mark[m] := mPath
            if (SaveMark <> 0)
            {
                IniWrite, %marks%, %TCMarkINI%, mark, ms
                IniWrite, %mPath%, %TCMarkINI%, mark, %m%
            }
        }
    }
    return
    TC_MenuHalder_AddMark:
        QZTC_AddMark()
    return
}

QZTC_AddMark(){
    ; &x >> dir
    ThisMenuItem := SubStr(A_ThisMenuItem, 7, StrLen(A_ThisMenuItem))
    if RegExMatch(ThisMenuItem, "i)\\\\桌面$"){
        Postmessage 1075, 2121, 0, , ahk_class TTOTAL_CMD
        return
    }
    if RegExMatch(ThisMenuItem, "i)\\\\计算机$"){
        Postmessage 1075, 2122, 0, , ahk_class TTOTAL_CMD
        return
    }
    if RegExMatch(ThisMenuItem, "i)\\\\所有控制面板项$"){
        Postmessage 1075, 2123, 0, , ahk_class TTOTAL_CMD
        return
    }
    if RegExMatch(ThisMenuItem, "i)\\\\Fonts$"){
        Postmessage 1075, 2124, 0, , ahk_class TTOTAL_CMD
        return
    }
    if RegExMatch(ThisMenuItem, "i)\\\\网络$"){
        Postmessage 1075, 2125, 0, , ahk_class TTOTAL_CMD
        return
    }
    if RegExMatch(ThisMenuItem, "i)\\\\打印机$"){
        Postmessage 1075, 2126, 0, , ahk_class TTOTAL_CMD
        return
    }
    if RegExMatch(ThisMenuItem, "i)\\\\回收站$"){
        Postmessage 1075, 2127, 0, , ahk_class TTOTAL_CMD
        return
    }
    ControlSetText, %TCEdit%, cd %ThisMenuItem%, ahk_class TTOTAL_CMD
    ControlSend, %TCEdit%, {Enter}, ahk_class TTOTAL_CMD
    ControlGetFocus, Ctrl, AHK_CLASS TTOTAL_CMD
    Postmessage, 0x19E, 1, 1, %Ctrl%, AHK_CLASS TTOTAL_CMD
    return
}

TC_ListMark(){ ;显示标记
    if Not Mark["ms"]
        return
    ControlGetFocus, TLB, ahk_class TTOTAL_CMD
    ControlGetPos, xn, yn, , , %TLB%, ahk_class TTOTAL_CMD
    Menu, MarkMenu, Show, %xn%, %yn%
}

/* 
TC_CreateNewFileNewStyle(){;新建文件
    ControlGetFocus, TLB, ahk_class TTOTAL_CMD
    ControlGetPos, xn, yn, , , %TLB%, ahk_class TTOTAL_CMD
    Menu, FileTemp, Add
    Menu, FileTemp, DeleteAll
    Menu, FileTemp, Add , F >> 文件夹, QZTC_cm_Mkdir()
    Menu, FileTemp, Icon, F >> 文件夹, %A_WinDir%\system32\Shell32.dll, 4
    Menu, FileTemp, Add , S >> 快捷方式, QZTC_cm_CreateShortcut()
    if A_OSVersion in WIN_2000, WIN_XP
        Menu, FileTemp, Icon, S >> 快捷方式, %A_WinDir%\system32\Shell32.dll, 30 ;我测试xp下必须是30
    else 
        Menu, FileTemp, Icon, S >> 快捷方式, %A_WinDir%\system32\Shell32.dll, 264 ;原来是264，xp下反正是有问题
    TC_FileTempMenuCheckNewStyle()
    Menu, FileTemp, Show, %xn%, %yn%
}
*/

TC_CreateNewFile(){ ; 新建文件
    ControlGetFocus, TLB, ahk_class TTOTAL_CMD
    ControlGetPos, xn, yn, , , %TLB%, ahk_class TTOTAL_CMD
    Menu, FileTemp, Add
    Menu, FileTemp, DeleteAll
    ;~ Menu, FileTemp, Add , 0 新建文件, :TC_CreateNewFile
    ;~ Menu, FileTemp, Icon, 0 新建文件, %A_WinDir%\system32\Shell32.dll, -152
    Menu, FileTemp, Add , 1 文件夹, QZTC_cm_Mkdir
    Menu, FileTemp, Icon, 1 文件夹, %A_WinDir%\system32\Shell32.dll, 4
    Menu, FileTemp, Add , 2 快捷方式, QZTC_cm_CreateShortcut
    if A_OSVersion in WIN_2000,WIN_XP
        Menu, FileTemp, Icon, 2 快捷方式, %A_WinDir%\system32\Shell32.dll, 30 ;我测试xp下必须是30
    else
        Menu, FileTemp, Icon, 2 快捷方式, %A_WinDir%\system32\Shell32.dll, 264 ;原来是264，xp下反正是有问题
    Menu, FileTemp, Add , 3 添加到新模板, QZTC_AddToTempFiles
    Menu, FileTemp, Icon, 3 添加到新模板, %A_WinDir%\system32\Shell32.dll, -155
    Menu, FileTemp, Add , 4 打开模板文件夹,QZTC_OpenTempfilesDir
    Menu, FileTemp, Icon, 4 打开模板文件夹, %A_WinDir%\system32\Shell32.dll, 4
    QZTC_FileTempMenuCheck()
    Menu, FileTemp, Show, %xn%, %yn%
}

QZTC_FileTempMenuCheck(){ ; 检查文件模板功能
    Global TCPath
    Splitpath, TCPath, , TCDir
    shellnewDir=%TCDir%\shellnew
    IfNotExist,%shellnewDir%
        FileCreateDir,%shellnewDir%
    Loop, %TCDir%\shellnew\*.*
    {
        if A_Index = 1
            Menu, FileTemp, Add
        ft := chr(64+A_Index) . " >> " . A_LoopFileName
        Menu, FileTemp, Add, %ft%, TC_FileTempNew
        Ext := "." . A_LoopFileExt
        IconFile := QZTC_RegGetNewFileIcon(Ext)
        IconFile := RegExReplace(IconFile, "i)%systemroot%", A_WinDir)
        IconFilePath := RegExReplace(IconFile, ",-?\d*", "")
        StringReplace, IconFilePath, IconFilePath, ", , A
        IconFileIndex := RegExReplace(IconFile, ".*,", "")
        IconFileIndex := IconFileIndex>=0?IconFileIndex+1:IconFileIndex
        ;MsgBox, %Ext%_%IconFile%_%IconFilePath%_%IconFileIndex%
        if Not FileExist(IconFilePath)
            Menu, FileTemp, Icon, %ft%, %A_WinDir%\system32\Shell32.dll, 1 ;-152
        else
            Menu, FileTemp, Icon, %ft%, %IconFilePath%, %IconFileIndex%
    }
}

QZTC_OpenTempfilesDir(){ ;打开模板文件夹
    Global TCPath
    Splitpath, TCPath, , TCDir
    shellnewDir=%TCDir%\shellnew
    global CurrentFocus
    CurrentFocus:=""
    Sleep,300
    ControlGetFocus, CurrentFocus, AHK_CLASS TTOTAL_CMD
    if CurrentFocus not in TMyListBox2,TMyListBox1
        return
    if CurrentFocus in TMyListBox2
        otherlist = TMyListBox1
    else
        otherlist = TMyListBox2
    ControlFocus, %otherlist% , ahk_class TTOTAL_CMD
    QZTC_SendPos(3001)  ;新建标签
    ControlSetText, Edit1, cd %shellnewDir%, ahk_class TTOTAL_CMD
    Sleep,200
    ControlSend, Edit1, {Enter}, ahk_class TTOTAL_CMD
}

/*
TC_FileTempMenuCheckNewStyle(){ ;检查文件模板功能（新）
    Global TCPath
    Splitpath, TCPath, , TCDir
    Loop, %TCDir%\shellnew\*.*
    {
        if A_Index = 1
            Menu, FileTemp, Add
        ft := SubStr(A_LoopFileName, 1, 1) . " >> " . A_LoopFileName
        ;ft := chr(64+A_Index) . " >> " . A_LoopFileName
        Menu, FileTemp, Add, %ft%, TC_FileTempNew
        Ext := "." . A_LoopFileExt
        IconFile := QZTC_RegGetNewFileIcon(Ext)
        IconFile := RegExReplace(IconFile, "i)%systemroot%", A_WinDir)
        IconFilePath := RegExReplace(IconFile, ",-?\d*", "")
        StringReplace, IconFilePath, IconFilePath, ", , A
        IconFileIndex := RegExReplace(IconFile, ".*,", "")
        IconFileIndex := IconFileIndex>=0?IconFileIndex+1:IconFileIndex
        ;MsgBox, %Ext%_%IconFile%_%IconFilePath%_%IconFileIndex%
        if Not FileExist(IconFilePath)
            Menu, FileTemp, Icon, %ft%, %A_WinDir%\system32\Shell32.dll, 1 ;-152
        else
            Menu, FileTemp, Icon, %ft%, %IconFilePath%, %IconFileIndex%
    }
}
*/

QZTC_AddToTempFiles() { ; 添加到文件模板中
    ClipSaved := ClipboardAll
    Clipboard :=
    QZTC_cm_CopyFullNamesToClip()
    ClipWait, 2
    if clipboard
        AddPath := clipboard
    else
        return
    clipboard := ClipSaved
    if FileExist(AddPath)
        Splitpath, AddPath, filename, , FileExt, filenamenoext
    else
        return
    Gui, Destroy
    Gui, Add, Text, Hidden, %AddPath%
    Gui, Add, Text, x12 y20 w50 h20 +Center, 模板源
    Gui, Add, Edit, x72 y20 w300 h20 Disabled, %FileName%
    Gui, Add, Text, x12 y50 w50 h20 +Center, 模板名
    Gui, Add, Edit, x72 y50 w300 h20 , %FileName%
    Gui, Add, Button, x162 y80 w90 h30 gQZTC_AddTempOK default, 确认(&S)
    Gui, Add, Button, x282 y80 w90 h30 gQZTC_NewFileClose , 取消(&C)
    Gui, Show, w400 h120, 添加模板
    if FileExt {
        Controlget, nf, hwnd, , edit2, A
        PostMessage, 0x0B1, 0, Strlen(filenamenoext), Edit2, A
    }
    return
    
    QZTC_AddTempOK:
        Global TCPath
        GuiControlGet, SrcPath, , Static1
        Splitpath, SrcPath, filename, , FileExt, filenamenoext
        GuiControlGet, NewFileName, , Edit2
        SNDir := RegExReplace(TCPath, "[^\\]*$") . "ShellNew\"
        if Not FileExist(SNDir)
            FileCreateDir, %SNDir%
        NewFile := SNDir . NewFileName
        FileCopy, %SrcPath%, %NewFile%, 1
        Gui, Destroy
    return
    
    QZTC_NewFileClose: ;关闭新建文件窗口
        Gui, Destroy
    return
}

TC_FileTempNew(){ ; 新建文件模板
    QZTC_NewFile(RegExReplace(A_ThisMenuItem, ".\s>>\s", RegExReplace(TCPath, "\\[^\\]*$", "\shellnew\")))
return
}

QZTC_NewFile(File = "", Blank := False){ ; 新建文件
    Global NewFile
    if Not File
        File := RegExReplace(NewFiles[A_ThisMenuItemPos], "(.*\[|\]$)", "")
        if (Blank) {
            FileName := "New.txt"
            FileNamenoext := "New"
            FileExt := "txt"
        } else if Not FileExist(File) {
            RegRead, ShellNewDir, HKEY_USERS, .default\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
            if Not ShellNewDir
                ShellNewDir := "C:\windows\Shellnew"
            File := ShellNewDir . "\" file
            if RegExMatch(SubStr(file, -7), "NullFile") {
                FileExt := RegExReplace(NewFiles[A_ThisMenuItemPos], "(.*\(|\).*)")
                File := "New" . FileExt
                FileName := "New" . FileExt
                FileNamenoext := "New"
            }
        }
    else
        Splitpath, file, filename, , FileExt, filenamenoext
    Gui, Destroy
    Gui, Add, Text, x12 y20 w50 h20 +Center, 模板源
    Gui, Add, Edit, x72 y20 w300 h20 Disabled, %file%
    Gui, Add, Text, x12 y50 w50 h20 +Center, 新建文件
    Gui, Add, Edit, x72 y50 w300 h20 , %filename%
    Gui, Add, Button, x162 y80 w90 h30 gQZTC_NewFileOK1 default, 确认(&S)
    Gui, Add, Button, x282 y80 w90 h30 gQZTC_NewFileClose1 , 取消(&C)
    Gui, Show, w400 h120, 新建文件
    if FileExt  {
        Controlget, nf, hwnd, , edit2, A
        PostMessage, 0x0B1, 0, Strlen(filenamenoext), Edit2, A
    }
    return
    
    QZTC_NewFileOK1: ;确认新建文件
        QZTC_NewFileOK()
    return

    QZTC_NewFileClose1: ;关闭新建文件窗口
        Gui, Destroy
    return
}

QZTC_NewFileOK(){ ;确认新建文件
    GuiControlGet, SrcPath, , Edit1
    GuiControlGet, NewFileName, , Edit2
    ClipSaved := ClipboardAll
    Clipboard :=
    QZTC_cm_CopySrcPathToClip()
    ClipWait, 2
    if clipboard
        DstPath := Clipboard
    else
        return
    clipboard := ClipSaved
        if RegExMatch(DstPath, "^\\\\计算机$")
        return
    if RegExMatch(DstPath, "i)\\\\所有控制面板项$")
        return
    if RegExMatch(DstPath, "i)\\\\Fonts$")
        return
    if RegExMatch(DstPath, "i)\\\\网络$")
        return
    if RegExMatch(DstPath, "i)\\\\打印机$")
        return
    if RegExMatch(DstPath, "i)\\\\回收站$")
        return
    if RegExmatch(DstPath, "^\\\\桌面$")
        DstPath := A_Desktop
    NewFile := DstPath . "\" . NewFileName
    if FileExist(NewFile) {
        MsgBox, 4, 新建文件, 新建文件已存在，是否覆盖？
        IfMsgBox No
            return
    }
    if !FileExist(SrcPath)
        Run, fsutil file createnew "%NewFile%" 0, , Hide
    else
        FileCopy, %SrcPath%, %NewFile%, 1

    Gui, Destroy
    WinActivate, AHK_CLASS TTOTAL_CMD
    ControlGetFocus, FocusCtrl, AHK_Class TTOTAL_CMD
    IF RegExMatch(FocusCtrl, TCListBox) {
        QZTC_cm_RereadSource()
        ControlGet, Text, List, , %FocusCtrl%, AHK_CLASS TTOTAL_CMD
        Loop, Parse, Text, `n
        {
            if RegExMatch(A_LoopField, NewFileName)  {
                Index := A_Index - 1
                Postmessage, 0x19E, %Index%, 1, %FocusCtrl%, AHK_CLASS TTOTAL_CMD
                Break
            }
        }
    }
}

;============================================================================
ReadNewFile(){ ; 新建文件菜单
    NewFiles[0] := 0
    SetBatchLines -1
    Loop, HKEY_CLASSES_ROOT , , 1, 0
    {
        if A_LoopRegName=.lnk ;让新建快捷方式无效
            continue
        else if RegExMatch(A_LoopRegName, "^\..*")
        {
            Reg := A_LoopRegName
            Loop, HKEY_CLASSES_ROOT, %Reg%, 1, 1
            {
                if RegExMatch(A_LoopRegName, "i)shellnew") {
                    NewReg := A_LoopRegSubKey "\shellnew"
                    if QZTC_RegGetNewFilePath(NewReg) {
                        NewFiles[0]++
                        Index := NewFiles[0]
                        NewFiles[Index] := QZTC_RegGetNewFileDescribe(Reg) . "(" . Reg . ")[" . QZTC_RegGetNewFilePath(NewReg) . "]"
                    }
                }
            }
        }
    }
    LoopCount := NewFiles[0]
    Half := LoopCount/2
    Loop % LoopCount
    {
        if( A_Index < %Half%){
            B_Index := NewFiles[0] - A_Index + 1
            C_Index := NewFiles[A_Index]
            NewFiles[A_Index] := NewFiles[B_Index]
            NewFiles[B_Index] := C_Index
        }
    }
    Menu, TC_CreateNewFile, UseErrorLevel, On
    LastExt := ""
    Loop % NewFiles[0]
    {
        File := RegExReplace(NewFiles[A_Index], "\(.*", "")
        Ext := RegExReplace(NewFiles[A_Index], "(.*\(|\)\[.*)", "")
        MenuFile := Chr(A_Index+64) . " >> " . File . "(" Ext . ")"
        ; 去除重复的文件，只有连续出现的情况有效
        if (Ext = LastExt){
            continue
        }
        LastExt := Ext

        Menu, TC_CreateNewFile, Add, %MenuFile%, NewFile

        IconFile := QZTC_RegGetNewFileIcon(Ext)
        IconFile := RegExReplace(IconFile, "i)%systemroot%", A_WinDir)
        IconFile := RegExReplace(IconFile, "i)%ProgramFiles%", A_ProgramFiles)
        IconFilePath := RegExReplace(IconFile, ",-?\d*", "")
        StringReplace, IconFilePath, IconFilePath, ", , A
        if Not FileExist(IconFilePath)
            IconFilePath := ""
        IconFileIndex := RegExReplace(IconFile, ".*,", "")
        IconFileIndex := IconFileIndex>=0?IconFileIndex+1:IconFileIndex
        ;MsgBox, %IconFile%_%IconFilePath%_%IconFileIndex%
        if Not RegExMatch(IconFileIndex, "^-?\d*$")
            IconFileIndex := ""
        if RegExMatch(Ext, "\.lnk"){
            IconFilePath := A_WinDir . "\system32\Shell32.dll"
            IconFileIndex := "264"
        }
        Menu, TC_CreateNewFile, Icon, %MenuFile%, %IconFilePath%, %IconFileIndex%
    }
}

QZTC_RegGetNewFilePath(reg){ ; 获取新建文件的源 ; reg 为后缀
    RegRead, GetRegPath, HKEY_CLASSES_ROOT, %Reg%, FileName
    IF Not ErrorLevel
        return GetRegPath
    RegRead, GetRegPath, HKEY_CLASSES_ROOT, %Reg%, NullFile
    IF Not ErrorLevel
        return "NullFile"
}

QZTC_RegGetNewFileType(reg){ ; 获取新建文件类型名 ; reg 为后缀
    RegRead, FileType, HKEY_CLASSES_ROOT, %Reg%
    if Not ErrorLevel
        return FileType
}

QZTC_RegGetNewFileDescribe(reg){ ; 获取文件描述 ; reg 为后缀
    FileType := QZTC_RegGetNewFileType(reg)
    RegRead, FileDesc, HKEY_CLASSES_ROOT, %FileType%
    if Not ErrorLevel
        return FileDesc
}

QZTC_RegGetNewFileIcon(reg){ ; 获取文件对应的图标 ; reg 为后缀
    IconPath := QZTC_RegGetNewFileType(reg) . "\DefaultIcon"
    RegRead, FileIcon, HKEY_CLASSES_ROOT, %IconPath%
    if Not ErrorLevel
        return FileIcon
}

TC_GoToParentEx(){ ; 返回到上层文件夹，可返回到我的电脑
    QZTC_IsRootDir()
    QZTC_cm_GoToParent()
}

QZTC_IsRootDir(){
    ClipSaved := ClipboardAll
    clipboard :=
    QZTC_cm_CopySrcPathToClip()
    ClipWait, 1
    Path := Clipboard
    Clipboard := ClipSaved
    if RegExMatch(Path, "^.:\\$"){
        QZTC_cm_OpenDrives()
        Path := "i)" . RegExReplace(Path, "\\", "")
        ControlGetFocus, focus_control, AHK_CLASS TTOTAL_CMD
        ControlGet, outvar, list, , %focus_control%, AHK_CLASS TTOTAL_CMD
        Loop, Parse, Outvar, `n
        {
            if Not A_LoopField
                Break
            if RegExMatch(A_LoopField, Path)
            {
                Focus := A_Index - 1
                Break
            }
        }
        PostMessage, 0x19E, %Focus%, 1, %focus_control%, AHK_CLASS TTOTAL_CMD
    }
}

TC_AlwayOnTop(){
    WinGet, ExStyle, ExStyle, ahk_class TTOTAL_CMD
    if (ExStyle & 0x8)
        WinSet, AlwaysOnTop, off, ahk_class TTOTAL_CMD
    else
        WinSet, AlwaysOnTop, on, ahk_class TTOTAL_CMD
}

QZTC_LeftRight(){
    location := 0
    ControlGetPos, x1, y1, , , %TCPanel1%, AHK_CLASS TTOTAL_CMD
    if x1 > %y1%
        location += 2
    ControlGetFocus, TLB, ahk_class TTOTAL_CMD
    ControlGetPos, x2, y2, wn, , %TLB%, ahk_class TTOTAL_CMD
    if location{
        if x1 > %x2%
            location += 1
    }else {
        if y1 > %y2%
            location += 1
    }
    return location
}

TC_DirectoryHotlist(){ ;常用文件夹，支持快捷键跳转
    ;vimd.changemode("普通模式")
    QZTC_cm_DirectoryHotlist()
}

TC_SrcViewChange(){ ;显示模式切换，详细信息-列表-缩略图
    global LastView
    if (LastView="Long"){
        LastView:="Shoft"
        QZTC_SendPos(302)
    } else if (LastView="Shoft"){
        LastView:="Thumbs"
        QZTC_SendPos(269)
    } else {
        LastView:="Long"
        QZTC_SendPos(301)
    } 
}

TC_UnpackFilesToCurrentDir(aFolder:=1){ ;解压文件到当前文件夹
    QZTC_SendPos(509)
    WinWaitActive, ahk_class TDLGUNZIPALL 
    sendinput,{del} 
    sleep,100
    if(aFolder=0) {
        control,Uncheck,,TCheckBox1,ahk_class TDLGUNZIPALL
    } else {
        control,check,,TCheckBox1,ahk_class TDLGUNZIPALL
    }
    sleep,100
    sendinput,{enter} 
}

TC_PackFilesToCurrentDir(aPanel:=0){ ;压缩文件到当前文件夹
    QZTC_SendPos(2018)   ;获取完整路径和文件名
    sleep 100
    MySel:=Clipboard
    QZTC_SendPos(332)   ;光标定位到焦点地址栏
    sleep 100
    QZTC_SendPos(2029)   ;获取来源路径
    sleep 100
    CurDir:=Clipboard
    IfInString,MySel,`n     ;如果多行文本，则以父文件夹为压缩文件名，否则以当前文件名
    {
        SplitPath,CurDir,,,MyOutExt,MyOutNameNoExt
    } else {
        FileAttrib:=FileExist(MySel)
        IfInString,FileAttrib,D         ;如果是文件夹
        {
            if(substr(MySel,0)!="\")
                MySel.="\"
            StringGetPos, pos, MySel, \, R,1
            MyOutNameNoExt:=substr(MySel,pos+1)
            MyOutNameNoExt:=StrReplace(MyOutNameNoExt,"\","")
        } else {
            SplitPath,MySel,,,MyOutExt,MyOutNameNoExt
        }
    }   
    if (aPanel=1) {
        QZTC_SendPos(2030)   ;获取目标路径
        sleep 100
        CurDir:=Clipboard
    }
    RackFileName=rar:%CurDir%\%MyOutNameNoExt%.rar
    Clipboard=%RackFileName%
    QZTC_SendPos(508)
    WinWaitActive, ahk_class ahk_class TDLGZIP
    sendinput,^v 
    ;~ sendinput,{enter} 
}

/*
TC_PackFilesToCurrentDir(){ ;压缩文件到另一面板
    QZTC_SendPos(2018)   ;获取完整路径和文件名
    sleep 100
    MySel:=Clipboard
    QZTC_SendPos(332)   ;光标定位到焦点地址栏
    sleep 100
    QZTC_SendPos(2029)   ;获取目标路径
    sleep 100
    CurDir:=Clipboard
    IfInString,MySel,`n     ;如果多行文本，则以父文件夹为压缩文件名，否则以当前文件名
        
        SplitPath,CurDir,,,MyOutExt,MyOutNameNoExt
    else {
        FileAttrib:=FileExist(MySel)
        IfInString,FileAttrib,D         ;如果是文件夹
        {
            if(substr(MySel,0)!="\")
                MySel.="\"
            StringGetPos, pos, MySel, \, R,1
            MyOutNameNoExt:=substr(MySel,pos+1)
            MyOutNameNoExt:=StrReplace(MyOutNameNoExt,"\","")
        } else
            SplitPath,MySel,,,MyOutExt,MyOutNameNoExt
    }   
    RackFileName=rar:%CurDir%\%MyOutNameNoExt%.rar
    Clipboard=%RackFileName%
    QZTC_SendPos(508)
    WinWaitActive, ahk_class ahk_class TDLGZIP
    sendinput,^v 
    ;~ sendinput,{enter} 
}
*/

/*
TC_PackFilesToCurrentDir(){ ;压缩文件到当前文件夹
    QZTC_SendPos(332)   ;光标定位到焦点地址栏
    sleep 100
    QZTC_SendPos(2029)   ;获取路径
    sleep 100
    CurDir:=Clipboard
    SplitPath,CurDir,,,,MyOutNameNoExt
    RackFileName=rar:%CurDir%\%MyOutNameNoExt%.rar
    Clipboard=%RackFileName%
    QZTC_SendPos(508)
    WinWaitActive, ahk_class ahk_class TDLGZIP
    sendinput,^v 
    ;~ sendinput,{enter} 
}
*/

; 增强命令 By 流彩 {{{1
TC_OpenDriveThis(){ ;打开驱动器列表:本侧
    ControlGetFocus, CurrentFocus, AHK_CLASS TTOTAL_CMD
    if CurrentFocus not in TMyListBox2, TMyListBox1
        return
    if CurrentFocus in TMyListBox2
        QZTC_SendPos(131)
    else
        QZTC_SendPos(231)
}

TC_OpenDriveThat(){ ;打开驱动器列表:另侧
    ControlGetFocus, CurrentFocus, AHK_CLASS TTOTAL_CMD
    if CurrentFocus not in TMyListBox2, TMyListBox1
        return
    if CurrentFocus in TMyListBox2
        QZTC_SendPos(231)
    else
        QZTC_SendPos(131)
}

TC_DirectoryHotlistother(){ ;常用文件夹:另一侧
    global CurrentFocus
    ControlGetFocus, CurrentFocus, AHK_CLASS TTOTAL_CMD
    if CurrentFocus not in TMyListBox2,TMyListBox1
        return
    if CurrentFocus in TMyListBox2
        otherlist = TMyListBox1
    else
        otherlist = TMyListBox2
    ControlFocus, %otherlist% , ahk_class TTOTAL_CMD
    QZTC_SendPos(526)
    SetTimer TC_Timer_WaitMenuPop3
    return
    
    TC_Timer_WaitMenuPop3: 
        winget, menupop, , ahk_class #32768
        if menupop{
            SetTimer, TC_Timer_WaitMenuPop3, Off
            SetTimer, TC_Timer_WaitMenuOff3
        }
    return

    TC_Timer_WaitMenuOff3: 
        winget, menupop, , ahk_class #32768
        if not menupop{
            SetTimer, TC_Timer_WaitMenuOff3, off
            ControlFocus, %CurrentFocus% , ahk_class TTOTAL_CMD
        }
    return
}

TC_CopyDirectoryHotlist(){ ;复制到常用文件夹
    global CurrentFocus
    CurrentFocus:=""
    ControlGetFocus, CurrentFocus, AHK_CLASS TTOTAL_CMD
    sleep,100   
    if CurrentFocus not in TMyListBox2,TMyListBox1
        return
    if CurrentFocus in TMyListBox2
        otherlist = TMyListBox1
    else
        otherlist = TMyListBox2
    ControlFocus, %otherlist% , ahk_class TTOTAL_CMD
    sleep,100
    QZTC_SendPos(526)
    SetTimer TC_Timer_WaitMenuPop1
    return
    
    TC_Timer_WaitMenuPop1: 
        winget, menupop, , ahk_class #32768
        if menupop{
            SetTimer, TC_Timer_WaitMenuPop1 , Off
            SetTimer, TC_Timer_WaitMenuOff1
        }
    return
    
    TC_Timer_WaitMenuOff1: 
        winget, menupop, , ahk_class #32768
        if not menupop{
            SetTimer, TC_Timer_WaitMenuOff1, off
            ControlFocus, %CurrentFocus% , ahk_class TTOTAL_CMD
            sleep,100
            QZTC_SendPos(3101)
        }
    return
}
   
TC_CopyUseQueues(){ ;无需确认，使用队列拷贝文件至另一窗口
    Send {F5}
    Send {F2}
}

TC_MoveUseQueues(){ ;无需确认，使用队列移动文件至另一窗口
    Send {F6}
    Send {F2}
}

TC_MoveDirectoryHotlist(){ ;移动到常用文件夹
    global CurrentFocus
    CurrentFocus:=""
    ;~ if QZTC_SendPos(0)
        ControlGetFocus, CurrentFocus, AHK_CLASS TTOTAL_CMD
    sleep,100
    if CurrentFocus not in TMyListBox2,TMyListBox1
        return
    if CurrentFocus in TMyListBox2
        otherlist = TMyListBox1
    else
        otherlist = TMyListBox2
    ControlFocus, %otherlist% , ahk_class TTOTAL_CMD
    sleep,100
    QZTC_SendPos(526)
    SetTimer TC_Timer_WaitMenuPop2
    return
    
    TC_Timer_WaitMenuPop2: 
        winget, menupop, , ahk_class #32768
        if menupop{
            SetTimer, TC_Timer_WaitMenuPop2 , Off
            SetTimer, TC_Timer_WaitMenuOff2
        }
    return

    TC_Timer_WaitMenuOff2: 
        winget, menupop, , ahk_class #32768
        if not menupop{
            SetTimer, TC_Timer_WaitMenuOff2, off
            ControlFocus, %CurrentFocus%, ahk_class TTOTAL_CMD
            sleep,100
            QZTC_SendPos(1005)
        }
    return
}

TC_GotoPreviousDirOther(){ ;后退另一侧
    Send {Tab}
    QZTC_SendPos(570)
    Send {Tab}
}

TC_GotoNextDirOther(){ ;前进另一侧
    Send {Tab}
    QZTC_SendPos(571)
    Send {Tab}
}

Totalcomander_select_tc(){
    GUI, FindTC:Default
    GuiControlGet, dir, , Edit1
    TCPath := dir "\totalcmd.exe"
    TCINI  := dir "\wincmd.ini"
    GUi, FindTC:Destroy
    IniWrite, %TCPath%, %ConfigPath%, TotalCommander_Config, TCPath
    IniWrite, %TCINI%, %ConfigPath%, TotalCommander_Config, TCINI
}

Totalcomander_select_tc64(){
    GUI, FindTC:Default
    GuiControlGet, dir, , Edit1
    TCPath := dir "\totalcmd64.exe"
    TCINI  := dir "\wincmd.ini"
    GUi, FindTC:Destroy
    IniWrite, %TCPath%, %ConfigPath%, TotalCommander_Config, TCPath
    IniWrite, %TCINI%, %ConfigPath%, TotalCommander_Config, TCINI
}

Totalcomander_select_tcdir(){
    FileSelectFolder, tcdir, , 0, 打开TC安装目录
    GuiControl, , Edit1, %tcdir%
}

TC_Toggle_AutoPercent(){ ;TC_VIM:启用/关闭：自动扩大本侧窗口
    run "%A_ahkpath%" "%A_ScriptDir%\Apps\TC自动扩大本侧窗口Kawvin.ahk"
}

TC_Toggle_50_100Percent(){ ;切换当前（纵向）窗口显示状态50%~100%"
    ControlGetPos, , , wp, hp, TPanel1, ahk_class TTOTAL_CMD
    ControlGetPos, , , w1, h1, TMyListBox1, ahk_class TTOTAL_CMD
    ControlGetPos, , , w2, h2, TMyListBox2, ahk_class TTOTAL_CMD
    if (wp < hp){
        ;纵向
        if (abs(w1 - w2) > 2)
            QZTC_SendPos(909)
        else
            QZTC_SendPos(910)
    }else{
        ;横向
        if (abs(h1 - h2)  > 2)
            QZTC_SendPos(909)
        else
            QZTC_SendPos(910)
    }
}

TC_Toggle_50_100Percent_V(){
    ; 切换当前（纵向）窗口显示状态50%~100%"
    ; 横向分割的窗口使用 TC_Toggle_50_100Percent 即可
    ControlGetPos, , , wp, hp, TPanel1, ahk_class TTOTAL_CMD
    ControlGetPos, , , w1, h1, TMyListBox1, ahk_class TTOTAL_CMD
    ControlGetPos, , , w2, h2, TMyListBox2, ahk_class TTOTAL_CMD
    if (wp < hp)  { ;纵向
        if (abs(w1 - w2) > 2){
            QZTC_SendPos(909)
        }else{
            QZTC_SendPos(910)
            QZTC_SendPos(305)
        }
    }else {         ;横向
        if (abs(h1 - h2)  > 2){
            QZTC_SendPos(305)
            QZTC_SendPos(909)
        }
        /*
        横向切换会错乱
        else {
            QZTC_SendPos(910)
        }
        */
    }
}

TC_OpenWithAlternateViewer(){ ;使用外部查看器打开（alt+f3）
    send !{f3}
}

TC_ViewFileUnderCursor(){ ;使用查看器打开光标所在文件（shift+f3）
    send +{f3}
}

TC_ToggleMenu(){
    global TCINI
    global ini
    IniRead, Mainmenu, %TCINI%, Configuration, Mainmenu
    if (Mainmenu = "WCMD_CHN.MNU"){
        WinGet,TChwnd,Id,ahk_class TTOTAL_CMD
        DllCall("SetMenu", "uint", TChwnd, "uint", 0)
        IniWrite, NONE.MNU, %TCINI%, Configuration, Mainmenu
        IniWrite, 1, %TCINI%, Configuration, RestrictInterface
        noneMnuPath := RegExReplace(TCPath, "i)totalcmd6?4?.exe$", "LANGUAGE\NONE.MNU")
        if (!FileExist(noneMnuPath))
            FileAppend, , %noneMnuPath%, UTF-8-RAW
    }else {
        IniWrite, WCMD_CHN.MNU, %TCINI%, Configuration, Mainmenu
        IniWrite, 0, %TCINI%, Configuration, RestrictInterface
        WinClose, AHK_CLASS TTOTAL_CMD
        Sleep, 50
        Run, %TCPath%
        Loop, 4
        {
            IfWinNotActive, AHK_CLASS TTOTAL_CMD
                WinActivate, AHK_CLASS TTOTAL_CMD
            else
                Break
            Sleep, 100
        }
    }
}

TC_SuperReturn(){
    ControlGetText, old_pwd_left, %TCPathPanel%, AHK_CLASS TTOTAL_CMD
    ControlGetText, old_pwd_right, %TCPathPanelRight%, AHK_CLASS TTOTAL_CMD
    QZTC_cm_Return()
    sleep, 10
    ControlGetText, new_pwd_left, %TCPathPanel%, AHK_CLASS TTOTAL_CMD
    ControlGetText, new_pwd_right, %TCPathPanelRight%, AHK_CLASS TTOTAL_CMD
    if (old_pwd_left != new_pwd_left || old_pwd_right != new_pwd_right){
        ControlGetFocus, Ctrl, AHK_CLASS TTOTAL_CMD
        Postmessage, 0x19E, 1, 1, %Ctrl%, AHK_CLASS TTOTAL_CMD
    }
}

TC_FileCopyForBak(){ ;将当前光标下的文件复制一份作为作为备份
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    filecopy, %Clipboard%, %Clipboard%.bak
}

TC_FileMoveForBak(){ ;将当前光标下的文件重命名为备份
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    SplitPath, Clipboard, name, dir, ext, name_no_ext

    if (Clipboard <> dir . "\")
        FileMove, %Clipboard%, %Clipboard%.bak
    else
        FileMoveDir, %dir%, %dir%.bak
}

TC_MultiFilePersistOpen(){ ;多个文件一次性连续打开
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    QZTC_SendPos(524)
    sleep, 200
    Loop, Parse, Clipboard, `n, `r
    {
        run, %A_LoopField%
    }
}

TC_CopyFileContents(){ ;不打开文件就复制文件内容
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    fileread, Contents, %Clipboard%
    Clipboard :=
    Clipboard = %Contents%
}

TC_OpenDirAndPaste(){ ;不打开目录，直接把复制的文件贴进去
    QZTC_SendPos(1001)
    QZTC_SendPos(2009)
    QZTC_SendPos(2002)
}

TC_MoveSelectedFilesToPrevFolder(){ ;将当前文件夹下的选定文件移动到上层目录中
    Send ^x
    QZTC_SendPos(2002)
    Send ^v
}

TC_MoveAllFilesToPrevFolder(){ ;将当前文件夹下的全部文件移动到上层目录中
; 时间控制不好可能会误删文件，慎用
    Send ^a
    sleep 100
    Send ^x
    QZTC_SendPos(2002)
    Send ^v
    sleep 500
    Send {del}
}

TC_SrcQuickViewAndTab(){ ;预览文件时,光标自动移到对侧窗口里
    QZTC_SendPos(304)
    Send, {Tab}
    Send, {Shift}
}

TC_CreateFileShortcut(){ ;创建当前光标下文件的快捷方式
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    SplitPath, Clipboard, name, dir, ext, name_no_ext
    ExtLen := StrLen(ext)
    if %ExtLen% != 0
        FileCreateShortcut, %Clipboard%, %dir%\%name_no_ext%.lnk
    if %ExtLen% = 0
        FileCreateShortcut, %dir%, %dir%.lnk
}

TC_CreateFileShortcutToDesktop(){ ;创建当前光标下文件的快捷方式并发送到桌面
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    SplitPath, Clipboard, name, dir, ext, name_no_ext
    ExtLen := StrLen(ext)
    if %ExtLen% != 0
        FileCreateShortcut, %Clipboard%, %dir%\%name_no_ext%.lnk
        FileMove, %dir%\%name_no_ext%.lnk, %USERPROFILE%\desktop\

        ; 如果不想打开桌面目录的话，注释以下4行
        ControlSetText, %TCEdit%, cd %USERPROFILE%\desktop\, ahk_class TTOTAL_CMD
        ControlSend, %TCEdit%, {enter}, ahk_class TTOTAL_CMD
        ControlGetFocus, Ctrl, AHK_CLASS TTOTAL_CMD
        Postmessage, 0x19E, 1, 1, %Ctrl%, AHK_CLASS TTOTAL_CMD
}

TC_CreateFileShortcutToStartup(){ ;创建当前光标下文件的快捷方式并发送到启动文件里
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    SplitPath, Clipboard, name, dir, ext, name_no_ext
    ExtLen := StrLen(ext)
    if %ExtLen% != 0
        ; MsgBox, %Clipboard%
        FileCreateShortcut, %Clipboard%, %dir%\%name_no_ext%.lnk
        FileMove, %dir%\%name_no_ext%.lnk, %appdata%\Microsoft\Windows\Start Menu\Programs\Startup\

        ; 如果不想打开启动目录的话，注释以下4行
        ControlSetText, %TCEdit%, cd %appdata%\Microsoft\Windows\Start Menu\Programs\Startup\, ahk_class TTOTAL_CMD
        ControlSend, %TCEdit%, {enter}, ahk_class TTOTAL_CMD
        ControlGetFocus, Ctrl, AHK_CLASS TTOTAL_CMD
        Postmessage, 0x19E, 1, 1, %Ctrl%, AHK_CLASS TTOTAL_CMD
}

TC_FilterSearchFNsuffix_exe(){ ;在当前目录里快速过滤exe扩展名的文件
    QZTC_SendPos(2915)
    Send, *.exe
    Send, {ESC}
}

TC_TwoFileExchangeName(){ ;两个文件互换文件名
    Clipboard :=
    QZTC_SendPos(2018)
    ClipWait
    PathArray := StrSplit(Clipboard, "`r`n")
    FirstName := PathArray[1]
    SecondName := PathArray[2]
    QZTC_SendPos(524)
    sleep, 200
    FileMove, %FirstName%, %FirstName%.bak
    FileMove, %SecondName%, %FirstName%
    FileMove, %FirstName%.bak, %SecondName%
}

TC_OpenPath(Path, InNewTab := true, LeftOrRight := ""){
    if (LeftOrRight = ""){
        LeftOrRight := "/R"
        if Mod(QZTC_LeftRight(), 2){
            LeftOrRight := "/L"
        }
    }
    if (InNewTab){
        Run, "%TCPath%" /O /T /A "%LeftOrRight%"="%Path%"
    } else{
        Run, "%TCPath%" /O /A "%LeftOrRight%"="%Path%"
    }
}

TC_MarkFile(){
    InputBox,MyTemInput,请输入备注内容,如果原文件有备注则直接替换,,300,130
    if ErrorLevel
        return
    if (MyTemInput="")
        return

    QZTC_cm_EditComment()
    ; 将备注设置为 m，可以通过将备注为 m 的文件显示成不同颜色，实现标记功能
    ; 不要在已有备注的文件使用
    Send, ^+{end}%MyTemInput%{f2}
}

TC_UnMarkFile(){
    QZTC_cm_EditComment()
    ; 删除 TC_MarkFile 的文件标记，也可用于清空文件备注
    Send, ^+{end}{del}{f2}
}

TC_SelectCmd(){
    OldClipboard := Clipboard
    QZTC_cm_CommandBrowser()
    sleep 100
    WinWaitClose, AHK_CLASS TCmdSelForm
    if (IsLabel("<" Clipboard ">") && Clipboard <> OldClipboard){
        GoSub, <%Clipboard%>
    }
    OldClipboard =
}

TC_ClearTitle(){
    TC_SetTitle("", false)
}

TC_SetTitle(Title := "", KeepVersion := true){ ; 自动设置的话显示效果滞后
    if (KeepVersion){
        WinGetTitle, OldTitle, ahk_class TTOTAL_CMD
        StringMid, NewTitle, OldTitle, 1, 21  ;保留TC的版本号信息
        WinSetTitle, ahk_class TTOTAL_CMD, , %NewTitle% - %Title%
    }else{
        WinSetTitle, ahk_class TTOTAL_CMD, , %Title%
    }
}

TC_ReOpenTab(){
    QZTC_cm_OpenNewTab()
    QZTC_cm_GotoPreviousDir()
}

TC_OpenDirsInFile(){
    OldClipboard := Clipboard
    Clipboard := ""
    QZTC_cm_CopyFullNamesToClip()
    ClipWait
    FileRead, Contents, %Clipboard%
    Clipboard := OldClipboard
    OldClipboard =
    Loop, Parse, Contents, `n, `r
    {
        if FileExist(A_LoopField){
            TC_OpenPath(A_LoopField, true)
            Sleep, 100
        }
    }
}

TC_CreateBlankFile(){
    ;~ NewFile("创建空文件", True)
}

TC_Run(cmd){
    ControlSetText, %TCEdit%, %cmd%, ahk_class TTOTAL_CMD
    ControlSend, %TCEdit%, {Enter}, ahk_class TTOTAL_CMD
}

TC_PasteFileEx(){ ;粘贴文件，如果光标下为目录则粘贴进该目录
    OldClipboard := ClipboardAll
    Clipboard =
    QZTC_SendPos(524)   ;QZTC_cm_ClearAll
    QZTC_SendPos(2018)  ;QZTC_cm_CopyFullNamesToClip
    ClipWait
    TempClip := Clipboard
    If (SubStr(TempClip, 0) == "\"){
        QZTC_SendPos(1001)  ;QZTC_cm_Return
        Clipboard := OldClipboard
        QZTC_SendPos(2009)  ;QZTC_cm_PasteFromClipboard
        QZTC_SendPos(2002)  ;QZTC_cm_GoToParent
    } else {
        Clipboard := OldClipboard
        QZTC_SendPos(2009)  ;QZTC_cm_PasteFromClipboard
    }
    OldClipboard =
}

; TC自带命令
QZTC_COMMAND(){  ;TC自带命令注释
    Global ArrayTCComment:=[]
    ArrayTCComment["QZTC_cm_SrcComments"] :="TC_来源窗口: 显示文件备注"
    ArrayTCComment["QZTC_cm_SrcShort"] :="TC_来源窗口: 列表"
    ArrayTCComment["QZTC_cm_SrcLong"] :="TC_来源窗口: 详细信息"
    ArrayTCComment["QZTC_cm_SrcTree"] :="TC_来源窗口: 文件夹树"
    ArrayTCComment["QZTC_cm_SrcQuickview"] :="TC_来源窗口: 快速查看"
    ArrayTCComment["QZTC_cm_VerticalPanels"] :="TC_来源窗口: 纵向/横向排列"
    ArrayTCComment["QZTC_cm_SrcQuickInternalOnly"] :="TC_来源窗口: 快速查看(不用插件"
    ArrayTCComment["QZTC_cm_SrcHideQuickview"] :="TC_来源窗口: 关闭快速查看窗口"
    ArrayTCComment["QZTC_cm_SrcExecs"] :="TC_来源窗口: 可执行文件"
    ArrayTCComment["QZTC_cm_SrcAllFiles"] :="TC_来源窗口: 所有文件"
    ArrayTCComment["QZTC_cm_SrcUserSpec"] :="TC_来源窗口: 上次选中的文件"
    ArrayTCComment["QZTC_cm_SrcUserDef"] :="TC_来源窗口: 自定义类型"
    ArrayTCComment["QZTC_cm_SrcByName"] :="TC_来源窗口: 按文件名排序"
    ArrayTCComment["QZTC_cm_SrcByExt"] :="TC_来源窗口: 按扩展名排序"
    ArrayTCComment["QZTC_cm_SrcBySize"] :="TC_来源窗口: 按大小排序"
    ArrayTCComment["QZTC_cm_SrcByDateTime"] :="TC_来源窗口: 按日期时间排序"
    ArrayTCComment["QZTC_cm_SrcUnsorted"] :="TC_来源窗口: 不排序"
    ArrayTCComment["QZTC_cm_SrcNegOrder"] :="TC_来源窗口: 反向排序"
    ArrayTCComment["QZTC_cm_SrcOpenDrives"] :="TC_来源窗口: 打开驱动器列表"
    ArrayTCComment["QZTC_cm_SrcThumbs"] :="TC_来源窗口: 缩略图"
    ArrayTCComment["QZTC_cm_SrcCustomViewMenu"] :="TC_来源窗口: 自定义视图菜单"
    ArrayTCComment["QZTC_cm_SrcPathFocus"] :="TC_来源窗口: 焦点置于路径上"
    ArrayTCComment["QZTC_cm_LeftComments"] :="TC_左窗口: 显示文件备注"
    ArrayTCComment["QZTC_cm_LeftShort"] :="TC_左窗口: 列表"
    ArrayTCComment["QZTC_cm_LeftLong"] :="TC_左窗口: 详细信息"
    ArrayTCComment["QZTC_cm_LeftTree"] :="TC_左窗口: 文件夹树"
    ArrayTCComment["QZTC_cm_LeftQuickview"] :="TC_左窗口: 快速查看"
    ArrayTCComment["QZTC_cm_LeftQuickInternalOnly"] :="TC_左窗口: 快速查看(不用插件"
    ArrayTCComment["QZTC_cm_LeftHideQuickview"] :="TC_左窗口: 关闭快速查看窗口"
    ArrayTCComment["QZTC_cm_LeftExecs"] :="TC_左窗口: 可执行文件"
    ArrayTCComment["QZTC_cm_LeftAllFiles"] :="TC_左窗口: 所有文件"
    ArrayTCComment["QZTC_cm_LeftUserSpec"] :="TC_左窗口: 上次选中的文件"
    ArrayTCComment["QZTC_cm_LeftUserDef"] :="TC_左窗口: 自定义类型"
    ArrayTCComment["QZTC_cm_LeftByName"] :="TC_左窗口: 按文件名排序"
    ArrayTCComment["QZTC_cm_LeftByExt"] :="TC_左窗口: 按扩展名排序"
    ArrayTCComment["QZTC_cm_LeftBySize"] :="TC_左窗口: 按大小排序"
    ArrayTCComment["QZTC_cm_LeftByDateTime"] :="TC_左窗口: 按日期时间排序"
    ArrayTCComment["QZTC_cm_LeftUnsorted"] :="TC_左窗口: 不排序"
    ArrayTCComment["QZTC_cm_LeftNegOrder"] :="TC_左窗口: 反向排序"
    ArrayTCComment["QZTC_cm_LeftOpenDrives"] :="TC_左窗口: 打开驱动器列表"
    ArrayTCComment["QZTC_cm_LeftPathFocus"] :="TC_左窗口: 焦点置于路径上"
    ArrayTCComment["QZTC_cm_LeftDirBranch"] :="TC_左窗口: 展开所有文件夹"
    ArrayTCComment["QZTC_cm_LeftDirBranchSel"] :="TC_左窗口: 只展开选中的文件夹"
    ArrayTCComment["QZTC_cm_LeftThumbs"] :="TC_窗口: 缩略图"
    ArrayTCComment["QZTC_cm_LeftCustomViewMenu"] :="TC_窗口: 自定义视图菜单"
    ArrayTCComment["QZTC_cm_RightComments"] :="TC_右窗口: 显示文件备注"
    ArrayTCComment["QZTC_cm_RightShort"] :="TC_右窗口: 列表"
    ArrayTCComment["QZTC_cm_RightLong"] :="TC_右窗口: 详细信息"
    ArrayTCComment["QZTC_cm_RightTree"] :="TC_右窗口: 文件夹树"
    ArrayTCComment["QZTC_cm_RightQuickvie"] :="TC_右窗口: 快速查看"
    ArrayTCComment["QZTC_cm_RightQuickInternalOnl"] :="TC_右窗口: 快速查看(不用插件"
    ArrayTCComment["QZTC_cm_RightHideQuickvie"] :="TC_右窗口: 关闭快速查看窗口"
    ArrayTCComment["QZTC_cm_RightExec"] :="TC_右窗口: 可执行文件"
    ArrayTCComment["QZTC_cm_RightAllFile"] :="TC_右窗口: 所有文件"
    ArrayTCComment["QZTC_cm_RightUserSpe"] :="TC_右窗口: 上次选中的文件"
    ArrayTCComment["QZTC_cm_RightUserDe"] :="TC_右窗口: 自定义类型"
    ArrayTCComment["QZTC_cm_RightByNam"] :="TC_右窗口: 按文件名排序"
    ArrayTCComment["QZTC_cm_RightByEx"] :="TC_右窗口: 按扩展名排序"
    ArrayTCComment["QZTC_cm_RightBySiz"] :="TC_右窗口: 按大小排序"
    ArrayTCComment["QZTC_cm_RightByDateTim"] :="TC_右窗口: 按日期时间排序"
    ArrayTCComment["QZTC_cm_RightUnsorte"] :="TC_右窗口: 不排序"
    ArrayTCComment["QZTC_cm_RightNegOrde"] :="TC_右窗口: 反向排序"
    ArrayTCComment["QZTC_cm_RightOpenDrives"] :="TC_右窗口: 打开驱动器列表"
    ArrayTCComment["QZTC_cm_RightPathFocu"] :="TC_右窗口: 焦点置于路径上"
    ArrayTCComment["QZTC_cm_RightDirBranch"] :="TC_右窗口: 展开所有文件夹"
    ArrayTCComment["QZTC_cm_RightDirBranchSel"] :="TC_右窗口: 只展开选中的文件夹"
    ArrayTCComment["QZTC_cm_RightThumb"] :="TC_右窗口: 缩略图"
    ArrayTCComment["QZTC_cm_RightCustomViewMen"] :="TC_右窗口: 自定义视图菜单"
    ArrayTCComment["QZTC_cm_List"] :="TC_文件操作: 查看(用查看程序"
    ArrayTCComment["QZTC_cm_ListInternalOnly"] :="TC_文件操作: 查看(用查看程序, 但不用插件/多媒体"
    ArrayTCComment["QZTC_cm_Edit"] :="TC_文件操作: 编辑"
    ArrayTCComment["QZTC_cm_Copy"] :="TC_文件操作: 复制"
    ArrayTCComment["QZTC_cm_CopySamepanel"] :="TC_文件操作: 复制到当前窗口"
    ArrayTCComment["QZTC_cm_CopyOtherpanel"] :="TC_文件操作: 复制到另一窗口(F5"
    ArrayTCComment["QZTC_cm_RenMov"] :="TC_文件操作: 重命名/移动"
    ArrayTCComment["QZTC_cm_MkDir"] :="TC_文件操作: 新建文件夹"
    ArrayTCComment["QZTC_cm_Delete"] :="TC_文件操作: 删除"
    ArrayTCComment["QZTC_cm_TestArchive"] :="TC_文件操作: 测试压缩包"
    ArrayTCComment["QZTC_cm_PackFiles"] :="TC_文件操作: 压缩文件"
    ArrayTCComment["QZTC_cm_UnpackFiles"] :="TC_文件操作: 解压文件"
    ArrayTCComment["QZTC_cm_RenameOnly"] :="TC_文件操作: 重命名(Shift+F6"
    ArrayTCComment["QZTC_cm_RenameSingleFile"] :="TC_文件操作: 重命名当前文件"
    ArrayTCComment["QZTC_cm_MoveOnly"] :="TC_文件操作: 移动到另一个窗口(F6"
    ArrayTCComment["QZTC_cm_Properties"] :="TC_文件操作: 显示属性"
    ArrayTCComment["QZTC_cm_CreateShortcut"] :="TC_文件操作: 创建快捷方式"
    ArrayTCComment["QZTC_cm_Return"] :="TC_文件操作: 模仿按 ENTER 键"
    ArrayTCComment["QZTC_cm_OpenAsUser"] :="TC_文件操作: 以其他用户身份运行光标处的程序"
    ArrayTCComment["QZTC_cm_Split"] :="TC_文件操作: 分割文件"
    ArrayTCComment["QZTC_cm_Combine"] :="TC_文件操作: 合并文件"
    ArrayTCComment["QZTC_cm_Encode"] :="TC_文件操作: 编码文件(MIME/UUE/XXE 格式"
    ArrayTCComment["QZTC_cm_Decode"] :="TC_文件操作: 解码文件(MIME/UUE/XXE/BinHex 格式"
    ArrayTCComment["QZTC_cm_CRCcreate"] :="TC_文件操作: 创建校验文件"
    ArrayTCComment["QZTC_cm_CRCcheck"] :="TC_文件操作: 验证校验和"
    ArrayTCComment["QZTC_cm_SetAttrib"] :="TC_文件操作: 更改属性"
    ArrayTCComment["QZTC_cm_Config"] :="TC_配置: 布局"
    ArrayTCComment["QZTC_cm_DisplayConfig"] :="TC_配置: 显示"
    ArrayTCComment["QZTC_cm_IconConfig"] :="TC_配置: 图标"
    ArrayTCComment["QZTC_cm_FontConfig"] :="TC_配置: 字体"
    ArrayTCComment["QZTC_cm_ColorConfig"] :="TC_配置: 颜色"
    ArrayTCComment["QZTC_cm_ConfTabChange"] :="TC_配置: 制表符"
    ArrayTCComment["QZTC_cm_DirTabsConfig"] :="TC_配置: 文件夹标签"
    ArrayTCComment["QZTC_cm_CustomColumnConfig"] :="TC_配置: 自定义列"
    ArrayTCComment["QZTC_cm_CustomColumnDlg"] :="TC_配置: 更改当前自定义列"
    ArrayTCComment["QZTC_cm_LanguageConfig"] :="TC_配置: 语言"
    ArrayTCComment["QZTC_cm_Config2"] :="TC_配置: 操作方式"
    ArrayTCComment["QZTC_cm_EditConfig"] :="TC_配置: 编辑/查看"
    ArrayTCComment["QZTC_cm_CopyConfig"] :="TC_配置: 复制/删除"
    ArrayTCComment["QZTC_cm_RefreshConfig"] :="TC_配置: 刷新"
    ArrayTCComment["QZTC_cm_QuickSearchConfig"] :="TC_配置: 快速搜索"
    ArrayTCComment["QZTC_cm_FtpConfig"] :="TC_配置: FTP"
    ArrayTCComment["QZTC_cm_PluginsConfig"] :="TC_配置: 插件"
    ArrayTCComment["QZTC_cm_ThumbnailsConfig"] :="TC_配置: 缩略图"
    ArrayTCComment["QZTC_cm_LogConfig"] :="TC_配置: 日志文件"
    ArrayTCComment["QZTC_cm_IgnoreConfig"] :="TC_配置: 隐藏文件"
    ArrayTCComment["QZTC_cm_PackerConfig"] :="TC_配置: 压缩程序"
    ArrayTCComment["QZTC_cm_ZipPackerConfig"] :="TC_配置: ZIP 压缩程序"
    ArrayTCComment["QZTC_cm_Confirmation"] :="TC_配置: 其他/确认"
    ArrayTCComment["QZTC_cm_ConfigSavePos"] :="TC_配置: 保存位置"
    ArrayTCComment["QZTC_cm_ButtonConfig"] :="TC_配置: 更改工具栏"
    ArrayTCComment["QZTC_cm_ConfigSaveSettings"] :="TC_配置: 保存设置"
    ArrayTCComment["QZTC_cm_ConfigChangeIniFiles"] :="TC_配置: 直接修改配置文件"
    ArrayTCComment["QZTC_cm_ConfigSaveDirHistory"] :="TC_配置: 保存文件夹历史记录"
    ArrayTCComment["QZTC_cm_ChangeStartMenu"] :="TC_配置: 更改开始菜单"
    ArrayTCComment["QZTC_cm_NetConnect"] :="TC_网络: 映射网络驱动器"
    ArrayTCComment["QZTC_cm_NetDisconnect"] :="TC_网络: 断开网络驱动器"
    ArrayTCComment["QZTC_cm_NetShareDir"] :="TC_网络: 共享当前文件夹"
    ArrayTCComment["QZTC_cm_NetUnshareDir"] :="TC_网络: 取消文件夹共享"
    ArrayTCComment["QZTC_cm_AdministerServer"] :="TC_网络: 显示系统共享文件夹"
    ArrayTCComment["QZTC_cm_ShowFileUser"] :="TC_网络: 显示本地文件的远程用户"
    ArrayTCComment["QZTC_cm_GetFileSpace"] :="TC_其他: 计算占用空间"
    ArrayTCComment["QZTC_cm_VolumeId"] :="TC_其他: 设置卷标"
    ArrayTCComment["QZTC_cm_VersionInfo"] :="TC_其他: 版本信息"
    ArrayTCComment["QZTC_cm_ExecuteDOS"] :="TC_其他: 打开命令提示符窗口"
    ArrayTCComment["QZTC_cm_CompareDirs"] :="TC_其他: 比较文件夹"
    ArrayTCComment["QZTC_cm_CompareDirsWithSubdirs"] :="TC_其他: 比较文件夹(同时标出另一窗口没有的子文件夹"
    ArrayTCComment["QZTC_cm_ContextMenu"] :="TC_其他: 显示快捷菜单"
    ArrayTCComment["QZTC_cm_ContextMenuInternal"] :="TC_其他: 显示快捷菜单(内部关联"
    ArrayTCComment["QZTC_cm_ContextMenuInternalCursor"] :="TC_其他: 显示光标处文件的内部关联快捷菜单"
    ArrayTCComment["QZTC_cm_ShowRemoteMenu"] :="TC_其他: 媒体中心遥控器播放/暂停键快捷菜单"
    ArrayTCComment["QZTC_cm_SyncChangeDir"] :="TC_其他: 两边窗口同步更改文件夹"
    ArrayTCComment["QZTC_cm_EditComment"] :="TC_其他: 编辑文件备注"
    ArrayTCComment["QZTC_cm_FocusLeft"] :="TC_其他: 光标置于左窗口"
    ArrayTCComment["QZTC_cm_FocusRight"] :="TC_其他: 光标置于右窗口"
    ArrayTCComment["QZTC_cm_FocusCmdLine"] :="TC_其他: 光标置于命令行"
    ArrayTCComment["QZTC_cm_FocusButtonBar"] :="TC_其他: 光标置于工具栏"
    ArrayTCComment["QZTC_cm_CountDirContent"] :="TC_其他: 计算所有文件夹占用的空间"
    ArrayTCComment["QZTC_cm_UnloadPlugins"] :="TC_其他: 卸载所有插件"
    ArrayTCComment["QZTC_cm_DirMatch"] :="TC_其他: 标出新文件, 隐藏相同者"
    ArrayTCComment["QZTC_cm_Exchange"] :="TC_其他: 交换左右窗口"
    ArrayTCComment["QZTC_cm_MatchSrc"] :="TC_其他: 目标 = 来源"
    ArrayTCComment["QZTC_cm_ReloadSelThumbs"] :="TC_其他: 刷新选中文件的缩略图"
    ArrayTCComment["QZTC_cm_DirectCableConnect"] :="TC_并口: 直接电缆连接"
    ArrayTCComment["QZTC_cm_NTinstallDriver"] :="TC_并口: 加载 NT 并口驱动程序"
    ArrayTCComment["QZTC_cm_NTremoveDriver"] :="TC_并口: 卸载 NT 并口驱动程序"
    ArrayTCComment["QZTC_cm_PrintDir"] :="TC_打印: 打印文件列表"
    ArrayTCComment["QZTC_cm_PrintDirSub"] :="TC_打印: 打印文件列表(含子文件夹"
    ArrayTCComment["QZTC_cm_PrintFile"] :="TC_打印: 打印文件内容"
    ArrayTCComment["QZTC_cm_SpreadSelection"] :="TC_选择: 选择一组文件"
    ArrayTCComment["QZTC_cm_SelectBoth"] :="TC_选择: 选择一组: 文件和文件夹"
    ArrayTCComment["QZTC_cm_SelectFiles"] :="TC_选择: 选择一组: 仅文件"
    ArrayTCComment["QZTC_cm_SelectFolders"] :="TC_选择: 选择一组: 仅文件夹"
    ArrayTCComment["QZTC_cm_ShrinkSelection"] :="TC_选择: 不选一组文件"
    ArrayTCComment["QZTC_cm_ClearFiles"] :="TC_选择: 不选一组: 仅文件"
    ArrayTCComment["QZTC_cm_ClearFolders"] :="TC_选择: 不选一组: 仅文件夹"
    ArrayTCComment["QZTC_cm_ClearSelCfg"] :="TC_选择: 不选一组: 文件和/或文件夹(视配置而定"
    ArrayTCComment["QZTC_cm_SelectAll"] :="TC_选择: 全部选择: 文件和/或文件夹(视配置而定"
    ArrayTCComment["QZTC_cm_SelectAllBoth"] :="TC_选择: 全部选择: 文件和文件夹"
    ArrayTCComment["QZTC_cm_SelectAllFiles"] :="TC_选择: 全部选择: 仅文件"
    ArrayTCComment["QZTC_cm_SelectAllFolders"] :="TC_选择: 全部选择: 仅文件夹"
    ArrayTCComment["QZTC_cm_ClearAll"] :="TC_选择: 全部取消: 文件和文件夹"
    ArrayTCComment["QZTC_cm_ClearAllFiles"] :="TC_选择: 全部取消: 仅文件"
    ArrayTCComment["QZTC_cm_ClearAllFolders"] :="TC_选择: 全部取消: 仅文件夹"
    ArrayTCComment["QZTC_cm_ClearAllCfg"] :="TC_选择: 全部取消: 文件和/或文件夹(视配置而定"
    ArrayTCComment["QZTC_cm_ExchangeSelection"] :="TC_选择: 反向选择"
    ArrayTCComment["QZTC_cm_ExchangeSelBoth"] :="TC_选择: 反向选择: 文件和文件夹"
    ArrayTCComment["QZTC_cm_ExchangeSelFiles"] :="TC_选择: 反向选择: 仅文件"
    ArrayTCComment["QZTC_cm_ExchangeSelFolders"] :="TC_选择: 反向选择: 仅文件夹"
    ArrayTCComment["QZTC_cm_SelectCurrentExtension"] :="TC_选择: 选择扩展名相同的文件"
    ArrayTCComment["QZTC_cm_UnselectCurrentExtension"] :="TC_选择: 不选扩展名相同的文件"
    ArrayTCComment["QZTC_cm_SelectCurrentName"] :="TC_选择: 选择文件名相同的文件"
    ArrayTCComment["QZTC_cm_UnselectCurrentName"] :="TC_选择: 不选文件名相同的文件"
    ArrayTCComment["QZTC_cm_SelectCurrentNameExt"] :="TC_选择: 选择文件名和扩展名相同的文件"
    ArrayTCComment["QZTC_cm_UnselectCurrentNameExt"] :="TC_选择: 不选文件名和扩展名相同的文件"
    ArrayTCComment["QZTC_cm_SelectCurrentPath"] :="TC_选择: 选择同一路径下的文件(展开文件夹+搜索文件"
    ArrayTCComment["QZTC_cm_UnselectCurrentPath"] :="TC_选择: 不选同一路径下的文件(展开文件夹+搜索文件"
    ArrayTCComment["QZTC_cm_RestoreSelection"] :="TC_选择: 恢复选择列表"
    ArrayTCComment["QZTC_cm_SaveSelection"] :="TC_选择: 保存选择列表"
    ArrayTCComment["QZTC_cm_SaveSelectionToFile"] :="TC_选择: 导出选择列表"
    ArrayTCComment["QZTC_cm_SaveSelectionToFileA"] :="TC_选择: 导出选择列表(ANSI"
    ArrayTCComment["QZTC_cm_SaveSelectionToFileW"] :="TC_选择: 导出选择列表(Unicode"
    ArrayTCComment["QZTC_cm_SaveDetailsToFile"] :="TC_选择: 导出详细信息"
    ArrayTCComment["QZTC_cm_SaveDetailsToFileA"] :="TC_选择: 导出详细信息(ANSI"
    ArrayTCComment["QZTC_cm_SaveDetailsToFileW"] :="TC_选择: 导出详细信息(Unicode"
    ArrayTCComment["QZTC_cm_LoadSelectionFromFile"] :="TC_选择: 导入选择列表(从文件"
    ArrayTCComment["QZTC_cm_LoadSelectionFromClip"] :="TC_选择: 导入选择列表(从剪贴板"
    ArrayTCComment["QZTC_cm_EditPermissionInfo"] :="TC_安全: 设置权限(NTFS"
    ArrayTCComment["QZTC_cm_EditAuditInfo"] :="TC_安全: 审核文件(NTFS"
    ArrayTCComment["QZTC_cm_EditOwnerInfo"] :="TC_安全: 获取所有权(NTFS"
    ArrayTCComment["QZTC_cm_CutToClipboard"] :="TC_剪贴板: 剪切选中的文件到剪贴板"
    ArrayTCComment["QZTC_cm_CopyToClipboard"] :="TC_剪贴板: 复制选中的文件到剪贴板"
    ArrayTCComment["QZTC_cm_PasteFromClipboard"] :="TC_剪贴板: 从剪贴板粘贴到当前文件夹"
    ArrayTCComment["QZTC_cm_CopyNamesToClip"] :="TC_剪贴板: 复制文件名"
    ArrayTCComment["QZTC_cm_CopyFullNamesToClip"] :="TC_剪贴板: 复制文件名及完整路径"
    ArrayTCComment["QZTC_cm_CopyNetNamesToClip"] :="TC_剪贴板: 复制文件名及网络路径"
    ArrayTCComment["QZTC_cm_CopySrcPathToClip"] :="TC_剪贴板: 复制来源路径"
    ArrayTCComment["QZTC_cm_CopyTrgPathToClip"] :="TC_剪贴板: 复制目标路径"
    ArrayTCComment["QZTC_cm_CopyFileDetailsToClip"] :="TC_剪贴板: 复制文件详细信息"
    ArrayTCComment["QZTC_cm_CopyFpFileDetailsToClip"] :="TC_剪贴板: 复制文件详细信息及完整路径"
    ArrayTCComment["QZTC_cm_CopyNetFileDetailsToClip"] :="TC_剪贴板: 复制文件详细信息及网络路径"
    ArrayTCComment["QZTC_cm_FtpConnect"] :="TC_FTP: FTP 连接"
    ArrayTCComment["QZTC_cm_FtpNew"] :="TC_FTP: 新建 FTP 连接"
    ArrayTCComment["QZTC_cm_FtpDisconnect"] :="TC_FTP: 断开 FTP 连接"
    ArrayTCComment["QZTC_cm_FtpHiddenFiles"] :="TC_FTP: 显示隐藏的FTP文件"
    ArrayTCComment["QZTC_cm_FtpAbort"] :="TC_FTP: 中止当前 FTP 命令"
    ArrayTCComment["QZTC_cm_FtpResumeDownload"] :="TC_FTP: 续传"
    ArrayTCComment["QZTC_cm_FtpSelectTransferMode"] :="TC_FTP: 选择传输模式"
    ArrayTCComment["QZTC_cm_FtpAddToList"] :="TC_FTP: 添加到下载列表"
    ArrayTCComment["QZTC_cm_FtpDownloadList"] :="TC_FTP: 按列表下载"
    ArrayTCComment["QZTC_cm_GotoPreviousDir"] :="TC_FTP: 后退"
    ArrayTCComment["QZTC_cm_GotoNextDir"] :="TC_导航: 前进"
    ArrayTCComment["QZTC_cm_DirectoryHistory"] :="TC_导航: 文件夹历史记录"
    ArrayTCComment["QZTC_cm_GotoPreviousLocalDir"] :="TC_导航: 后退(非 FTP"
    ArrayTCComment["QZTC_cm_GotoNextLocalDir"] :="TC_导航: 前进(非 FTP"
    ArrayTCComment["QZTC_cm_DirectoryHotlist"] :="TC_导航: 常用文件夹"
    ArrayTCComment["QZTC_cm_GoToRoot"] :="TC_导航: 转到根文件夹"
    ArrayTCComment["QZTC_cm_GoToParent"] :="TC_导航: 转到上层文件夹"
    ArrayTCComment["QZTC_cm_GoToDir"] :="TC_导航: 打开光标处的文件夹或压缩包"
    ArrayTCComment["QZTC_cm_OpenDesktop"] :="TC_导航: 桌面"
    ArrayTCComment["QZTC_cm_OpenDrives"] :="TC_导航: 我的电脑"
    ArrayTCComment["QZTC_cm_OpenControls"] :="TC_导航: 控制面板"
    ArrayTCComment["QZTC_cm_OpenFonts"] :="TC_导航: 字体"
    ArrayTCComment["QZTC_cm_OpenNetwork"] :="TC_导航: 网上邻居"
    ArrayTCComment["QZTC_cm_OpenPrinters"] :="TC_导航: 打印机"
    ArrayTCComment["QZTC_cm_OpenRecycled"] :="TC_导航: 回收站"
    ArrayTCComment["QZTC_cm_CDtree"] :="TC_导航: 更改文件夹"
    ArrayTCComment["QZTC_cm_TransferLeft"] :="TC_导航: 在左窗口打开光标处的文件夹或压缩包"
    ArrayTCComment["QZTC_cm_TransferRight"] :="TC_导航: 在右窗口打开光标处的文件夹或压缩包"
    ArrayTCComment["QZTC_cm_EditPath"] :="TC_导航: 编辑来源窗口的路径"
    ArrayTCComment["QZTC_cm_GoToFirstFile"] :="TC_导航: 光标移到列表中的第一个文件"
    ArrayTCComment["QZTC_cm_GotoNextDrive"] :="TC_导航: 转到下一个驱动器"
    ArrayTCComment["QZTC_cm_GotoPreviousDrive"] :="TC_导航: 转到上一个驱动器"
    ArrayTCComment["QZTC_cm_GotoNextSelected"] :="TC_导航: 转到下一个选中的文件"
    ArrayTCComment["QZTC_cm_GotoPrevSelected"] :="TC_导航: 转到上一个选中的文件"
    ArrayTCComment["QZTC_cm_GotoDriveA"] :="TC_导航: 转到驱动器 A"
    ArrayTCComment["QZTC_cm_GotoDriveC"] :="TC_导航: 转到驱动器 C"
    ArrayTCComment["QZTC_cm_GotoDriveD"] :="TC_导航: 转到驱动器 D"
    ArrayTCComment["QZTC_cm_GotoDriveE"] :="TC_导航: 转到驱动器 E"
    ArrayTCComment["QZTC_cm_GotoDriveF"] :="TC_导航: 可自定义其他驱动器"
    ArrayTCComment["QZTC_cm_GotoDriveZ"] :="TC_导航: 最多 26 个"
    ArrayTCComment["QZTC_cm_HelpIndex"] :="TC_帮助: 帮助索引"
    ArrayTCComment["QZTC_cm_Keyboard"] :="TC_帮助: 快捷键列表"
    ArrayTCComment["QZTC_cm_Register"] :="TC_帮助: 注册信息"
    ArrayTCComment["QZTC_cm_VisitHomepage"] :="TC_帮助: 访问 Totalcmd 网站"
    ArrayTCComment["QZTC_cm_About"] :="TC_帮助: 关于 Total Commander"
    ArrayTCComment["QZTC_cm_Exit"] :="TC_窗口: 退出 Total Commander"
    ArrayTCComment["QZTC_cm_Minimize"] :="TC_窗口: 最小化 Total Commander"
    ArrayTCComment["QZTC_cm_Maximize"] :="TC_窗口: 最大化 Total Commander"
    ArrayTCComment["QZTC_cm_Restore"] :="TC_窗口: 恢复正常大小"
    ArrayTCComment["QZTC_cm_ClearCmdLine"] :="TC_命令行: 清除命令行"
    ArrayTCComment["QZTC_cm_NextCommand"] :="TC_命令行: 下一条命令"
    ArrayTCComment["QZTC_cm_PrevCommand"] :="TC_命令行: 上一条命令"
    ArrayTCComment["QZTC_cm_AddPathToCmdline"] :="TC_命令行: 将路径复制到命令行"
    ArrayTCComment["QZTC_cm_MultiRenameFiles"] :="TC_工具: 批量重命名"
    ArrayTCComment["QZTC_cm_SysInfo"] :="TC_工具: 系统信息"
    ArrayTCComment["QZTC_cm_OpenTransferManager"] :="TC_工具: 后台传输管理器"
    ArrayTCComment["QZTC_cm_SearchFor"] :="TC_工具: 搜索文件"
    ArrayTCComment["QZTC_cm_SearchStandalone"] :="TC_工具: 在单独进程搜索文件"
    ArrayTCComment["QZTC_cm_FileSync"] :="TC_工具: 同步文件夹"
    ArrayTCComment["QZTC_cm_Associate"] :="TC_工具: 文件关联"
    ArrayTCComment["QZTC_cm_InternalAssociate"] :="TC_工具: 定义内部关联"
    ArrayTCComment["QZTC_cm_CompareFilesByContent"] :="TC_工具: 比较文件内容"
    ArrayTCComment["QZTC_cm_IntCompareFilesByContent"] :="TC_工具: 使用内部比较程序"
    ArrayTCComment["QZTC_cm_CommandBrowser"] :="TC_工具: 浏览内部命令"
    ArrayTCComment["QZTC_cm_VisButtonbar"] :="TC_视图: 显示/隐藏: 工具栏"
    ArrayTCComment["QZTC_cm_VisDriveButtons"] :="TC_视图: 显示/隐藏: 驱动器按钮"
    ArrayTCComment["QZTC_cm_VisTwoDriveButtons"] :="TC_视图: 显示/隐藏: 两个驱动器按钮栏"
    ArrayTCComment["QZTC_cm_VisFlatDriveButtons"] :="TC_视图: 切换: 平坦/立体驱动器按钮"
    ArrayTCComment["QZTC_cm_VisFlatInterface"] :="TC_视图: 切换: 平坦/立体用户界面"
    ArrayTCComment["QZTC_cm_VisDriveCombo"] :="TC_视图: 显示/隐藏: 驱动器列表"
    ArrayTCComment["QZTC_cm_VisCurDir"] :="TC_视图: 显示/隐藏: 当前文件夹"
    ArrayTCComment["QZTC_cm_VisBreadCrumbs"] :="TC_视图: 显示/隐藏: 路径导航栏"
    ArrayTCComment["QZTC_cm_VisTabHeader"] :="TC_视图: 显示/隐藏: 排序制表符"
    ArrayTCComment["QZTC_cm_VisStatusbar"] :="TC_视图: 显示/隐藏: 状态栏"
    ArrayTCComment["QZTC_cm_VisCmdLine"] :="TC_视图: 显示/隐藏: 命令行"
    ArrayTCComment["QZTC_cm_VisKeyButtons"] :="TC_视图: 显示/隐藏: 功能键按钮"
    ArrayTCComment["QZTC_cm_ShowHint"] :="TC_视图: 显示文件提示"
    ArrayTCComment["QZTC_cm_ShowQuickSearch"] :="TC_视图: 显示快速搜索窗口"
    ArrayTCComment["QZTC_cm_SwitchLongNames"] :="TC_视图: 开启/关闭: 长文件名显示"
    ArrayTCComment["QZTC_cm_RereadSource"] :="TC_视图: 刷新来源窗口"
    ArrayTCComment["QZTC_cm_ShowOnlySelected"] :="TC_视图: 仅显示选中的文件"
    ArrayTCComment["QZTC_cm_SwitchHidSys"] :="TC_视图: 开启/关闭: 隐藏或系统文件显示"
    ArrayTCComment["QZTC_cm_Switch83Names"] :="TC_视图: 开启/关闭: 8.3 式文件名小写显示"
    ArrayTCComment["QZTC_cm_SwitchDirSort"] :="TC_视图: 开启/关闭: 文件夹按名称排序"
    ArrayTCComment["QZTC_cm_DirBranch"] :="TC_视图: 展开所有文件夹"
    ArrayTCComment["QZTC_cm_DirBranchSel"] :="TC_视图: 只展开选中的文件夹"
    ArrayTCComment["QZTC_cm_50Percent"] :="TC_视图: 窗口分隔栏位于 50%"
    ArrayTCComment["QZTC_cm_100Percent"] :="TC_视图: 窗口分隔栏位于 100% TC 8.0+"
    ArrayTCComment["QZTC_cm_VisDirTabs"] :="TC_视图: 显示/隐藏: 文件夹标签"
    ArrayTCComment["QZTC_cm_VisXPThemeBackground"] :="TC_视图: 显示/隐藏: XP 主题背景"
    ArrayTCComment["QZTC_cm_SwitchOverlayIcons"] :="TC_视图: 开启/关闭: 叠置图标显示"
    ArrayTCComment["QZTC_cm_VisHistHotButtons"] :="TC_视图: 显示/隐藏: 文件夹历史记录和常用文件夹按钮"
    ArrayTCComment["QZTC_cm_SwitchWatchDirs"] :="TC_视图: 启用/禁用: 文件夹自动刷新"
    ArrayTCComment["QZTC_cm_SwitchIgnoreList"] :="TC_视图: 启用/禁用: 自定义隐藏文件"
    ArrayTCComment["QZTC_cm_SwitchX64Redirection"] :="TC_视图: 开启/关闭: 32 位 system32 目录重定向(64 位 Windows"
    ArrayTCComment["QZTC_cm_SeparateTreeOff"] :="TC_视图: 关闭独立文件夹树面板"
    ArrayTCComment["QZTC_cm_SeparateTree1"] :="TC_视图: 一个独立文件夹树面板"
    ArrayTCComment["QZTC_cm_SeparateTree2"] :="TC_视图: 两个独立文件夹树面板"
    ArrayTCComment["QZTC_cm_SwitchSeparateTree"] :="TC_视图: 切换独立文件夹树面板状态"
    ArrayTCComment["QZTC_cm_ToggleSeparateTree1"] :="TC_视图: 开启/关闭: 一个独立文件夹树面板"
    ArrayTCComment["QZTC_cm_ToggleSeparateTree2"] :="TC_视图: 开启/关闭: 两个独立文件夹树面板"
    ArrayTCComment["QZTC_cm_UserMenu1"] :="TC_用户: 用户菜单 1"
    ArrayTCComment["QZTC_cm_UserMenu2"] :="TC_用户: 用户菜单 2"
    ArrayTCComment["QZTC_cm_UserMenu3"] :="TC_用户: 用户菜单 3"
    ArrayTCComment["QZTC_cm_UserMenu4"] :="TC_用户: 用户菜单 4"
    ArrayTCComment["QZTC_cm_UserMenu5"] :="TC_用户: 用户菜单 5"
    ArrayTCComment["QZTC_cm_UserMenu6"] :="TC_用户: 用户菜单 6"
    ArrayTCComment["QZTC_cm_UserMenu7"] :="TC_用户: 用户菜单 7"
    ArrayTCComment["QZTC_cm_UserMenu8"] :="TC_用户: 用户菜单 8"
    ArrayTCComment["QZTC_cm_UserMenu9"] :="TC_用户: 用户菜单 9"
    ArrayTCComment["QZTC_cm_UserMenu10"] :="TC_用户: 可定义其他用户菜单"
    ArrayTCComment["QZTC_cm_OpenNewTab"] :="TC_标签: 新建标签"
    ArrayTCComment["QZTC_cm_OpenNewTabBg"] :="TC_标签: 新建标签(在后台"
    ArrayTCComment["QZTC_cm_OpenDirInNewTab"] :="TC_标签: 新建标签(并打开光标处的文件夹"
    ArrayTCComment["QZTC_cm_OpenDirInNewTabOther"] :="TC_标签: 新建标签(在另一窗口打开文件夹"
    ArrayTCComment["QZTC_cm_SwitchToNextTab"] :="TC_标签: 下一个标签(Ctrl+Tab"
    ArrayTCComment["QZTC_cm_SwitchToPreviousTab"] :="TC_标签: 上一个标签(Ctrl+Shift+Tab"
    ArrayTCComment["QZTC_cm_CloseCurrentTab"] :="TC_标签: 关闭当前标签"
    ArrayTCComment["QZTC_cm_CloseAllTabs"] :="TC_标签: 关闭所有标签"
    ArrayTCComment["QZTC_cm_DirTabsShowMenu"] :="TC_标签: 显示标签菜单"
    ArrayTCComment["QZTC_cm_ToggleLockCurrentTab"] :="TC_标签: 锁定/解锁当前标签"
    ArrayTCComment["QZTC_cm_ToggleLockDcaCurrentTab"] :="TC_标签: 锁定/解锁当前标签(可更改文件夹"
    ArrayTCComment["QZTC_cm_ExchangeWithTabs"] :="TC_标签: 交换左右窗口及其标签"
    ArrayTCComment["QZTC_cm_GoToLockedDir"] :="TC_标签: 转到锁定标签的根文件夹"
    ArrayTCComment["QZTC_cm_SrcActivateTab1"] :="TC_标签: 来源窗口: 激活标签 1"
    ArrayTCComment["QZTC_cm_SrcActivateTab2"] :="TC_标签: 来源窗口: 激活标签 2"
    ArrayTCComment["QZTC_cm_SrcActivateTab3"] :="TC_标签: 来源窗口: 激活标签 3"
    ArrayTCComment["QZTC_cm_SrcActivateTab4"] :="TC_标签: 来源窗口: 激活标签 4"
    ArrayTCComment["QZTC_cm_SrcActivateTab5"] :="TC_标签: 来源窗口: 激活标签 5"
    ArrayTCComment["QZTC_cm_SrcActivateTab6"] :="TC_标签: 来源窗口: 激活标签 6"
    ArrayTCComment["QZTC_cm_SrcActivateTab7"] :="TC_标签: 来源窗口: 激活标签 7"
    ArrayTCComment["QZTC_cm_SrcActivateTab8"] :="TC_标签: 来源窗口: 激活标签 8"
    ArrayTCComment["QZTC_cm_SrcActivateTab9"] :="TC_标签: 来源窗口: 激活标签 9"
    ArrayTCComment["QZTC_cm_SrcActivateTab10"] :="TC_标签: 来源窗口: 激活标签 10"
    ArrayTCComment["QZTC_cm_TrgActivateTab1"] :="TC_标签: 目标窗口: 激活标签 1"
    ArrayTCComment["QZTC_cm_TrgActivateTab2"] :="TC_标签: 目标窗口: 激活标签 2"
    ArrayTCComment["QZTC_cm_TrgActivateTab3"] :="TC_标签: 目标窗口: 激活标签 3"
    ArrayTCComment["QZTC_cm_TrgActivateTab4"] :="TC_标签: 目标窗口: 激活标签 4"
    ArrayTCComment["QZTC_cm_TrgActivateTab5"] :="TC_标签: 目标窗口: 激活标签 5"
    ArrayTCComment["QZTC_cm_TrgActivateTab6"] :="TC_标签: 目标窗口: 激活标签 6"
    ArrayTCComment["QZTC_cm_TrgActivateTab7"] :="TC_标签: 目标窗口: 激活标签 7"
    ArrayTCComment["QZTC_cm_TrgActivateTab8"] :="TC_标签: 目标窗口: 激活标签 8"
    ArrayTCComment["QZTC_cm_TrgActivateTab9"] :="TC_标签: 目标窗口: 激活标签 9"
    ArrayTCComment["QZTC_cm_TrgActivateTab10"] :="TC_标签: 目标窗口: 激活标签 10"
    ArrayTCComment["QZTC_cm_LeftActivateTab1"] :="TC_标签: 左窗口: 激活标签 1"
    ArrayTCComment["QZTC_cm_LeftActivateTab2"] :="TC_标签: 左窗口: 激活标签 2"
    ArrayTCComment["QZTC_cm_LeftActivateTab3"] :="TC_标签: 左窗口: 激活标签 3"
    ArrayTCComment["QZTC_cm_LeftActivateTab4"] :="TC_标签: 左窗口: 激活标签 4"
    ArrayTCComment["QZTC_cm_LeftActivateTab5"] :="TC_标签: 左窗口: 激活标签 5"
    ArrayTCComment["QZTC_cm_LeftActivateTab6"] :="TC_标签: 左窗口: 激活标签 6"
    ArrayTCComment["QZTC_cm_LeftActivateTab7"] :="TC_标签: 左窗口: 激活标签 7"
    ArrayTCComment["QZTC_cm_LeftActivateTab8"] :="TC_标签: 左窗口: 激活标签 8"
    ArrayTCComment["QZTC_cm_LeftActivateTab9"] :="TC_标签: 左窗口: 激活标签 9"
    ArrayTCComment["QZTC_cm_LeftActivateTab10"] :="TC_标签: 左窗口: 激活标签 10"
    ArrayTCComment["QZTC_cm_RightActivateTab1"] :="TC_标签: 右窗口: 激活标签 1"
    ArrayTCComment["QZTC_cm_RightActivateTab2"] :="TC_标签: 右窗口: 激活标签 2"
    ArrayTCComment["QZTC_cm_RightActivateTab3"] :="TC_标签: 右窗口: 激活标签 3"
    ArrayTCComment["QZTC_cm_RightActivateTab4"] :="TC_标签: 右窗口: 激活标签 4"
    ArrayTCComment["QZTC_cm_RightActivateTab5"] :="TC_标签: 右窗口: 激活标签 5"
    ArrayTCComment["QZTC_cm_RightActivateTab6"] :="TC_标签: 右窗口: 激活标签 6"
    ArrayTCComment["QZTC_cm_RightActivateTab7"] :="TC_标签: 右窗口: 激活标签 7"
    ArrayTCComment["QZTC_cm_RightActivateTab8"] :="TC_标签: 右窗口: 激活标签 8"
    ArrayTCComment["QZTC_cm_RightActivateTab9"] :="TC_标签: 右窗口: 激活标签 9"
    ArrayTCComment["QZTC_cm_RightActivateTab10"] :="TC_标签: 右窗口: 激活标签 10"
    ArrayTCComment["QZTC_cm_SrcSortByCol1"] :="TC_排序: 来源窗口: 按第 1 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol2"] :="TC_排序: 来源窗口: 按第 2 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol3"] :="TC_排序: 来源窗口: 按第 3 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol4"] :="TC_排序: 来源窗口: 按第 4 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol5"] :="TC_排序: 来源窗口: 按第 5 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol6"] :="TC_排序: 来源窗口: 按第 6 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol7"] :="TC_排序: 来源窗口: 按第 7 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol8"] :="TC_排序: 来源窗口: 按第 8 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol9"] :="TC_排序: 来源窗口: 按第 9 列排序"
    ArrayTCComment["QZTC_cm_SrcSortByCol10"] :="TC_排序: 来源窗口: 按第 10 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol1"] :="TC_排序: 目标窗口: 按第 1 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol2"] :="TC_排序: 目标窗口: 按第 2 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol3"] :="TC_排序: 目标窗口: 按第 3 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol4"] :="TC_排序: 目标窗口: 按第 4 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol5"] :="TC_排序: 目标窗口: 按第 5 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol6"] :="TC_排序: 目标窗口: 按第 6 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol7"] :="TC_排序: 目标窗口: 按第 7 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol8"] :="TC_排序: 目标窗口: 按第 8 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol9"] :="TC_排序: 目标窗口: 按第 9 列排序"
    ArrayTCComment["QZTC_cm_TrgSortByCol10"] :="TC_排序: 目标窗口: 按第 10 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol1"] :="TC_排序: 左窗口: 按第 1 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol2"] :="TC_排序: 左窗口: 按第 2 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol3"] :="TC_排序: 左窗口: 按第 3 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol4"] :="TC_排序: 左窗口: 按第 4 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol5"] :="TC_排序: 左窗口: 按第 5 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol6"] :="TC_排序: 左窗口: 按第 6 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol7"] :="TC_排序: 左窗口: 按第 7 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol8"] :="TC_排序: 左窗口: 按第 8 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol9"] :="TC_排序: 左窗口: 按第 9 列排序"
    ArrayTCComment["QZTC_cm_LeftSortByCol10"] :="TC_排序: 左窗口: 按第 10 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol1"] :="TC_排序: 右窗口: 按第 1 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol2"] :="TC_排序: 右窗口: 按第 2 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol3"] :="TC_排序: 右窗口: 按第 3 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol4"] :="TC_排序: 右窗口: 按第 4 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol5"] :="TC_排序: 右窗口: 按第 5 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol6"] :="TC_排序: 右窗口: 按第 6 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol7"] :="TC_排序: 右窗口: 按第 7 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol8"] :="TC_排序: 右窗口: 按第 8 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol9"] :="TC_排序: 右窗口: 按第 9 列排序"
    ArrayTCComment["QZTC_cm_RightSortByCol10"] :="TC_排序: 右窗口: 按第 10 列排序"
    ArrayTCComment["QZTC_cm_SrcCustomView1"] :="TC_自定义列视图: 来源窗口: 自定义列视图 1"
    ArrayTCComment["QZTC_cm_SrcCustomView2"] :="TC_自定义列视图: 来源窗口: 自定义列视图 2"
    ArrayTCComment["QZTC_cm_SrcCustomView3"] :="TC_自定义列视图: 来源窗口: 自定义列视图 3"
    ArrayTCComment["QZTC_cm_SrcCustomView4"] :="TC_自定义列视图: 来源窗口: 自定义列视图 4"
    ArrayTCComment["QZTC_cm_SrcCustomView5"] :="TC_自定义列视图: 来源窗口: 自定义列视图 5"
    ArrayTCComment["QZTC_cm_SrcCustomView6"] :="TC_自定义列视图: 来源窗口: 自定义列视图 6"
    ArrayTCComment["QZTC_cm_SrcCustomView7"] :="TC_自定义列视图: 来源窗口: 自定义列视图 7"
    ArrayTCComment["QZTC_cm_SrcCustomView8"] :="TC_自定义列视图: 来源窗口: 自定义列视图 8"
    ArrayTCComment["QZTC_cm_SrcCustomView9"] :="TC_自定义列视图: 来源窗口: 自定义列视图 9"
    ArrayTCComment["QZTC_cm_SrcCustomView10"] :="TC_自定义列视图: 来源窗口: 自定义列视图 10"
    ArrayTCComment["QZTC_cm_LeftCustomView1"] :="TC_自定义列视图: 左窗口: 自定义列视图 1"
    ArrayTCComment["QZTC_cm_LeftCustomView2"] :="TC_自定义列视图: 左窗口: 自定义列视图 2"
    ArrayTCComment["QZTC_cm_LeftCustomView3"] :="TC_自定义列视图: 左窗口: 自定义列视图 3"
    ArrayTCComment["QZTC_cm_LeftCustomView4"] :="TC_自定义列视图: 左窗口: 自定义列视图 4"
    ArrayTCComment["QZTC_cm_LeftCustomView5"] :="TC_自定义列视图: 左窗口: 自定义列视图 5"
    ArrayTCComment["QZTC_cm_LeftCustomView6"] :="TC_自定义列视图: 左窗口: 自定义列视图 6"
    ArrayTCComment["QZTC_cm_LeftCustomView7"] :="TC_自定义列视图: 左窗口: 自定义列视图 7"
    ArrayTCComment["QZTC_cm_LeftCustomView8"] :="TC_自定义列视图: 左窗口: 自定义列视图 8"
    ArrayTCComment["QZTC_cm_LeftCustomView9"] :="TC_自定义列视图: 左窗口: 自定义列视图 9"
    ArrayTCComment["QZTC_cm_LeftCustomView10"] :="TC_自定义列视图: 左窗口: 自定义列视图 10"
    ArrayTCComment["QZTC_cm_RightCustomView1"] :="TC_自定义列视图: 右窗口: 自定义列视图 1"
    ArrayTCComment["QZTC_cm_RightCustomView2"] :="TC_自定义列视图: 右窗口: 自定义列视图 2"
    ArrayTCComment["QZTC_cm_RightCustomView3"] :="TC_自定义列视图: 右窗口: 自定义列视图 3"
    ArrayTCComment["QZTC_cm_RightCustomView4"] :="TC_自定义列视图: 右窗口: 自定义列视图 4"
    ArrayTCComment["QZTC_cm_RightCustomView5"] :="TC_自定义列视图: 右窗口: 自定义列视图 5"
    ArrayTCComment["QZTC_cm_RightCustomView6"] :="TC_自定义列视图: 右窗口: 自定义列视图 6"
    ArrayTCComment["QZTC_cm_RightCustomView7"] :="TC_自定义列视图: 右窗口: 自定义列视图 7"
    ArrayTCComment["QZTC_cm_RightCustomView8"] :="TC_自定义列视图: 右窗口: 自定义列视图 8"
    ArrayTCComment["QZTC_cm_RightCustomView9"] :="TC_自定义列视图: 右窗口: 自定义列视图 9"
    ArrayTCComment["QZTC_cm_RightCustomView10"] :="TC_自定义列视图: 右窗口: 自定义列视图 10"
    ArrayTCComment["QZTC_cm_SrcNextCustomView"] :="TC_自定义列视图: 来源窗口: 下一个自定义视图"
    ArrayTCComment["QZTC_cm_SrcPrevCustomView"] :="TC_自定义列视图: 来源窗口: 上一个自定义视图"
    ArrayTCComment["QZTC_cm_TrgNextCustomView"] :="TC_自定义列视图: 目标窗口: 下一个自定义视图"
    ArrayTCComment["QZTC_cm_TrgPrevCustomView"] :="TC_自定义列视图: 目标窗口: 上一个自定义视图"
    ArrayTCComment["QZTC_cm_LeftNextCustomView"] :="TC_自定义列视图: 左窗口: 下一个自定义视图"
    ArrayTCComment["QZTC_cm_LeftPrevCustomView"] :="TC_自定义列视图: 左窗口: 上一个自定义视图"
    ArrayTCComment["QZTC_cm_RightNextCustomView"] :="TC_自定义列视图: 右窗口: 下一个自定义视图"
    ArrayTCComment["QZTC_cm_RightPrevCustomView"] :="TC_自定义列视图: 右窗口: 上一个自定义视图"
    ArrayTCComment["QZTC_cm_LoadAllOnDemandFields"] :="TC_自定义列视图: 所有文件都按需加载备注"
    ArrayTCComment["QZTC_cm_LoadSelOnDemandFields"] :="TC_自定义列视图: 仅选中的文件按需加载备注"
    ArrayTCComment["QZTC_cm_ContentStopLoadFields"] :="TC_自定义列视图: 停止后台加载备注"
}

QZTC_SendPos(Number){
    PostMessage 1075, %Number%, 0, , AHK_CLASS TTOTAL_CMD
}

;来源窗口 =========================================
QZTC_cm_SrcComments(){  ;来源窗口: 显示文件备注
    QZTC_SendPos(300)
}

QZTC_cm_SrcShort(){  ;来源窗口: 列表
    QZTC_SendPos(301)
}

QZTC_cm_SrcLong(){  ;来源窗口: 详细信息
    QZTC_SendPos(302)
}

QZTC_cm_SrcTree(){  ;来源窗口: 文件夹树
    QZTC_SendPos(303)
}

QZTC_cm_SrcQuickview(){  ;来源窗口: 快速查看
    QZTC_SendPos(304)
}

QZTC_cm_VerticalPanels(){  ;来源窗口: 纵向排列
    QZTC_SendPos(305)
}

QZTC_cm_SrcQuickInternalOnly(){  ;来源窗口: 快速查看(不用插件)
    QZTC_SendPos(306)
}

QZTC_cm_SrcHideQuickview(){  ;来源窗口: 关闭快速查看窗口
    QZTC_SendPos(307)
}

QZTC_cm_SrcExecs(){  ;来源窗口: 可执行文件
    QZTC_SendPos(311)
}

QZTC_cm_SrcAllFiles(){  ;来源窗口: 所有文件
    QZTC_SendPos(312)
}

QZTC_cm_SrcUserSpec(){  ;来源窗口: 上次选中的文件
    QZTC_SendPos(313)
}

QZTC_cm_SrcUserDef(){  ;来源窗口: 自定义类型
    QZTC_SendPos(314)
}

QZTC_cm_SrcByName(){  ;来源窗口: 按文件名排序
    QZTC_SendPos(321)
}

QZTC_cm_SrcByExt(){  ;来源窗口: 按扩展名排序
    QZTC_SendPos(322)
}

QZTC_cm_SrcBySize(){  ;来源窗口: 按大小排序
    QZTC_SendPos(323)
}

QZTC_cm_SrcByDateTime(){  ;来源窗口: 按日期时间排序
    QZTC_SendPos(324)
}

QZTC_cm_SrcUnsorted(){  ;来源窗口: 不排序
    QZTC_SendPos(325)
}

QZTC_cm_SrcNegOrder(){  ;来源窗口: 反向排序
    QZTC_SendPos(330)
}

QZTC_cm_SrcOpenDrives(){  ;来源窗口: 打开驱动器列表
    QZTC_SendPos(331)
}

QZTC_cm_SrcThumbs(){  ;来源窗口: 缩略图
    QZTC_SendPos(269)
}

QZTC_cm_SrcCustomViewMenu(){  ;来源窗口: 自定义视图菜单
    QZTC_SendPos(270)
}

QZTC_cm_SrcPathFocus(){  ;来源窗口: 焦点置于路径上
    QZTC_SendPos(332)
}

;左窗口 =========================================
QZTC_cm_LeftComments(){  ;左窗口: 显示文件备注
    QZTC_SendPos(100)
}

QZTC_cm_LeftShort(){  ;左窗口: 列表
    QZTC_SendPos(101)
}

QZTC_cm_LeftLong(){  ;左窗口: 详细信息
    QZTC_SendPos(102)
}

QZTC_cm_LeftTree(){  ;左窗口: 文件夹树
    QZTC_SendPos(103)
}

QZTC_cm_LeftQuickview(){  ;左窗口: 快速查看
    QZTC_SendPos(104)
}

QZTC_cm_LeftQuickInternalOnly(){  ;左窗口: 快速查看(不用插件)
    QZTC_SendPos(106)
}

QZTC_cm_LeftHideQuickview(){  ;左窗口: 关闭快速查看窗口
    QZTC_SendPos(107)
}

QZTC_cm_LeftExecs(){  ;左窗口: 可执行文件
    QZTC_SendPos(111)
}

QZTC_cm_LeftAllFiles(){  ;左窗口: 所有文件
    QZTC_SendPos(112)
}

QZTC_cm_LeftUserSpec(){  ;左窗口: 上次选中的文件
    QZTC_SendPos(113)
}

QZTC_cm_LeftUserDef(){  ;左窗口: 自定义类型
    QZTC_SendPos(114)
}

QZTC_cm_LeftByName(){  ;左窗口: 按文件名排序
    QZTC_SendPos(121)
}

QZTC_cm_LeftByExt(){  ;左窗口: 按扩展名排序
    QZTC_SendPos(122)
}

QZTC_cm_LeftBySize(){  ;左窗口: 按大小排序
    QZTC_SendPos(123)
}

QZTC_cm_LeftByDateTime(){  ;左窗口: 按日期时间排序
    QZTC_SendPos(124)
}

QZTC_cm_LeftUnsorted(){  ;左窗口: 不排序
    QZTC_SendPos(125)
}

QZTC_cm_LeftNegOrder(){  ;左窗口: 反向排序
    QZTC_SendPos(130)
}

QZTC_cm_LeftOpenDrives(){  ;左窗口: 打开驱动器列表
    QZTC_SendPos(131)
}

QZTC_cm_LeftPathFocus(){  ;左窗口: 焦点置于路径上
    QZTC_SendPos(132)
}

QZTC_cm_LeftDirBranch(){  ;左窗口: 展开所有文件夹
    QZTC_SendPos(2034)
}

QZTC_cm_LeftDirBranchSel(){  ;左窗口: 只展开选中的文件夹
    QZTC_SendPos(2047)
}

QZTC_cm_LeftThumbs(){  ;窗口: 缩略图
    QZTC_SendPos(69)
}

QZTC_cm_LeftCustomViewMenu(){  ;窗口: 自定义视图菜单
    QZTC_SendPos(70)
}

;右窗口 =========================================
QZTC_cm_RightComments(){  ;右窗口: 显示文件备注
    QZTC_SendPos(200)
}

QZTC_cm_RightShort(){  ;右窗口: 列表
    QZTC_SendPos(201)
}

QZTC_cm_RightLong(){  ; 右窗口: 详细信息
    QZTC_SendPos(202)
}

QZTC_cm_RightTree(){  ;右窗口: 文件夹树
    QZTC_SendPos(203)
}

QZTC_cm_RightQuickvie(){  ;右窗口: 快速查看
    QZTC_SendPos(204)
}

QZTC_cm_RightQuickInternalOnl(){  ;右窗口: 快速查看(不用插件)
    QZTC_SendPos(206)
}

QZTC_cm_RightHideQuickvie(){  ;右窗口: 关闭快速查看窗口
    QZTC_SendPos(207)
}

QZTC_cm_RightExec(){  ;右窗口: 可执行文件
    QZTC_SendPos(211)
}

QZTC_cm_RightAllFile(){  ;右窗口: 所有文件
    QZTC_SendPos(212)
}

QZTC_cm_RightUserSpe(){  ;右窗口: 上次选中的文件
    QZTC_SendPos(213)
}

QZTC_cm_RightUserDe(){  ;右窗口: 自定义类型
    QZTC_SendPos(214)
}

QZTC_cm_RightByNam(){  ;右窗口: 按文件名排序
    QZTC_SendPos(221)
}

QZTC_cm_RightByEx(){  ;右窗口: 按扩展名排序
    QZTC_SendPos(222)
}

QZTC_cm_RightBySiz(){  ;右窗口: 按大小排序
    QZTC_SendPos(223)
}

QZTC_cm_RightByDateTim(){  ;右窗口: 按日期时间排序
    QZTC_SendPos(224)
}

QZTC_cm_RightUnsorte(){  ;右窗口: 不排序
    QZTC_SendPos(225)
}

QZTC_cm_RightNegOrde(){  ;右窗口: 反向排序
    QZTC_SendPos(230)
}

QZTC_cm_RightOpenDrives(){  ;右窗口: 打开驱动器列表
    QZTC_SendPos(231)
}

QZTC_cm_RightPathFocu(){  ;右窗口: 焦点置于路径上
    QZTC_SendPos(232)
}

QZTC_cm_RightDirBranch(){  ;右窗口: 展开所有文件夹
    QZTC_SendPos(2035)
}

QZTC_cm_RightDirBranchSel(){  ;右窗口: 只展开选中的文件夹
    QZTC_SendPos(2048)
}

QZTC_cm_RightThumb(){  ;右窗口: 缩略图
    QZTC_SendPos(169)
}

QZTC_cm_RightCustomViewMen(){  ;右窗口: 自定义视图菜单
    QZTC_SendPos(170)
}

;文件操作 =========================================
QZTC_cm_List(){  ;文件操作: 查看(用查看程序)
    QZTC_SendPos(903)
}

QZTC_cm_ListInternalOnly(){  ;文件操作: 查看(用查看程序, 但不用插件/多媒体)
    QZTC_SendPos(1006)
}

QZTC_cm_Edit(){  ;文件操作: 编辑
    QZTC_SendPos(904)
}

QZTC_cm_Copy(){  ;文件操作: 复制
    QZTC_SendPos(905)
}

QZTC_cm_CopySamepanel(){  ;文件操作: 复制到当前窗口(Shift+F5)
    QZTC_SendPos(3100)
}

QZTC_cm_CopyOtherpanel(){  ;文件操作: 复制到另一窗口(F5)
    QZTC_SendPos(3101)
}

QZTC_cm_RenMov(){  ;文件操作: 重命名/移动
    QZTC_SendPos(906)
}

QZTC_cm_MkDir(){  ;文件操作: 新建文件夹
    QZTC_SendPos(907)
}

QZTC_cm_Delete(){  ;文件操作: 删除
    QZTC_SendPos(908)
}

QZTC_cm_TestArchive(){  ;文件操作: 测试压缩包
    QZTC_SendPos(518)
}

QZTC_cm_PackFiles(){  ;文件操作: 压缩文件
    QZTC_SendPos(508)
}

QZTC_cm_UnpackFiles(){  ;文件操作: 解压文件
    QZTC_SendPos(509)
}

QZTC_cm_RenameOnly(){  ;文件操作: 重命名(Shift+F6)
    QZTC_SendPos(1002)
}

QZTC_cm_RenameSingleFile(){  ;文件操作: 重命名当前文件
    QZTC_SendPos(1007)
}

QZTC_cm_MoveOnly(){  ;文件操作: 移动到另一个窗口(F6)
    QZTC_SendPos(1005)
}

QZTC_cm_Properties(){  ;文件操作: 显示属性
    QZTC_SendPos(1003)
}

QZTC_cm_CreateShortcut(){  ;文件操作: 创建快捷方式
    QZTC_SendPos(1004)
}

QZTC_cm_Return(){  ;文件操作: 模仿按 ENTER 键
    QZTC_SendPos(1001)
}

QZTC_cm_OpenAsUser(){  ;文件操作: 以其他用户身份运行光标处的程序
    QZTC_SendPos(2800)
}

QZTC_cm_Split(){  ;文件操作: 分割文件
    QZTC_SendPos(560)
}

QZTC_cm_Combine(){  ;文件操作: 合并文件
    QZTC_SendPos(561)
}

QZTC_cm_Encode(){  ;文件操作: 编码文件(MIME/UUE/XXE 格式)
    QZTC_SendPos(562)
}

QZTC_cm_Decode(){  ;文件操作: 解码文件(MIME/UUE/XXE/BinHex 格式)
    QZTC_SendPos(563)
}

QZTC_cm_CRCcreate(){  ;文件操作: 创建校验文件
    QZTC_SendPos(564)
}

QZTC_cm_CRCcheck(){  ;文件操作: 验证校验和
    QZTC_SendPos(565)
}

QZTC_cm_SetAttrib(){  ;文件操作: 更改属性
    QZTC_SendPos(502)
}

;配置 =========================================
QZTC_cm_Config(){  ;配置: 布局
    QZTC_SendPos(490)
}

QZTC_cm_DisplayConfig(){  ;配置: 显示
    QZTC_SendPos(486)
}

QZTC_cm_IconConfig(){  ;配置: 图标
    QZTC_SendPos(477)
}

QZTC_cm_FontConfig(){  ;配置: 字体
    QZTC_SendPos(492)
}

QZTC_cm_ColorConfig(){  ;配置: 颜色
    QZTC_SendPos(494)
}

QZTC_cm_ConfTabChange(){  ;配置: 制表符
    QZTC_SendPos(497)
}

QZTC_cm_DirTabsConfig(){  ;配置: 文件夹标签
    QZTC_SendPos(488)
}

QZTC_cm_CustomColumnConfig(){  ;配置: 自定义列
    QZTC_SendPos(483)
}

QZTC_cm_CustomColumnDlg(){  ;配置: 更改当前自定义列
    QZTC_SendPos(2920)
}

QZTC_cm_LanguageConfig(){  ;配置: 语言
    QZTC_SendPos(499)
}

QZTC_cm_Config2(){  ;配置: 操作方式
    QZTC_SendPos(516)
}

QZTC_cm_EditConfig(){  ;配置: 编辑/查看
    QZTC_SendPos(496)
}

QZTC_cm_CopyConfig(){  ;配置: 复制/删除
    QZTC_SendPos(487)
}

QZTC_cm_RefreshConfig(){  ;配置: 刷新
    QZTC_SendPos(478)
}

QZTC_cm_QuickSearchConfig(){  ;配置: 快速搜索
    QZTC_SendPos(479)
}

QZTC_cm_FtpConfig(){  ;配置: FTP
    QZTC_SendPos(489)
}

QZTC_cm_PluginsConfig(){  ;配置: 插件
    QZTC_SendPos(484)
}

QZTC_cm_ThumbnailsConfig(){  ;配置: 缩略图
    QZTC_SendPos(482)
}

QZTC_cm_LogConfig(){  ;配置: 日志文件
    QZTC_SendPos(481)
}

QZTC_cm_IgnoreConfig(){  ;配置: 隐藏文件
    QZTC_SendPos(480)
}

QZTC_cm_PackerConfig(){  ;配置: 压缩程序
    QZTC_SendPos(491)
}

QZTC_cm_ZipPackerConfig(){  ;配置: ZIP 压缩程序
    QZTC_SendPos(485)
}

QZTC_cm_Confirmation(){  ;配置: 其他/确认
    QZTC_SendPos(495)
}

QZTC_cm_ConfigSavePos(){  ;配置: 保存位置
    QZTC_SendPos(493)
}

QZTC_cm_ButtonConfig(){  ;配置: 更改工具栏
    QZTC_SendPos(498)
}

QZTC_cm_ConfigSaveSettings(){  ;配置: 保存设置
    QZTC_SendPos(580)
}

QZTC_cm_ConfigChangeIniFiles(){  ;配置: 直接修改配置文件
    QZTC_SendPos(581)
}

QZTC_cm_ConfigSaveDirHistory(){  ;配置: 保存文件夹历史记录
    QZTC_SendPos(582)
}

QZTC_cm_ChangeStartMenu(){  ;配置: 更改开始菜单
    QZTC_SendPos(700)
}

;网络 =========================================
QZTC_cm_NetConnect(){  ;网络: 映射网络驱动器
    QZTC_SendPos(512)
}

QZTC_cm_NetDisconnect(){  ;网络: 断开网络驱动器
    QZTC_SendPos(513)
}

QZTC_cm_NetShareDir(){  ;网络: 共享当前文件夹
    QZTC_SendPos(514)
}

QZTC_cm_NetUnshareDir(){  ;网络: 取消文件夹共享
    QZTC_SendPos(515)
}

QZTC_cm_AdministerServer(){  ;网络: 显示系统共享文件夹
    QZTC_SendPos(2204)
}

QZTC_cm_ShowFileUser(){  ;网络: 显示本地文件的远程用户
    QZTC_SendPos(2203)
}

;其他 =========================================
QZTC_cm_GetFileSpace(){  ;其他: 计算占用空间
    QZTC_SendPos(503)
}

QZTC_cm_VolumeId(){  ;其他: 设置卷标
    QZTC_SendPos(505)
}

QZTC_cm_VersionInfo(){  ;其他: 版本信息
    QZTC_SendPos(510)
}

QZTC_cm_ExecuteDOS(){  ;其他: 打开命令提示符窗口
    QZTC_SendPos(511)
}

QZTC_cm_CompareDirs(){  ;其他: 比较文件夹
    QZTC_SendPos(533)
}

QZTC_cm_CompareDirsWithSubdirs(){  ;其他: 比较文件夹(同时标出另一窗口没有的子文件夹)
    QZTC_SendPos(536)
}

QZTC_cm_ContextMenu(){  ;其他: 显示快捷菜单
    QZTC_SendPos(2500)
}

QZTC_cm_ContextMenuInternal(){  ;其他: 显示快捷菜单(内部关联)
    QZTC_SendPos(2927)
}

QZTC_cm_ContextMenuInternalCursor(){  ;其他: 显示光标处文件的内部关联快捷菜单
    QZTC_SendPos(2928)
}

QZTC_cm_ShowRemoteMenu(){  ;其他: 媒体中心遥控器播放/暂停键快捷菜单
    QZTC_SendPos(2930)
}

QZTC_cm_SyncChangeDir(){  ;其他: 两边窗口同步更改文件夹
    QZTC_SendPos(2600)
}

QZTC_cm_EditComment(){  ;其他: 编辑文件备注
    QZTC_SendPos(2700)
}

QZTC_cm_FocusLeft(){  ;其他: 光标置于左窗口
    QZTC_SendPos(4001)
}

QZTC_cm_FocusRight(){  ;其他: 光标置于右窗口
    QZTC_SendPos(4002)
}

QZTC_cm_FocusCmdLine(){  ;其他: 光标置于命令行
    QZTC_SendPos(4003)
}

QZTC_cm_FocusButtonBar(){  ;其他: 光标置于工具栏
    QZTC_SendPos(4004)
}

QZTC_cm_CountDirContent(){  ;其他: 计算所有文件夹占用的空间
    QZTC_SendPos(2014)
}

QZTC_cm_UnloadPlugins(){  ;其他: 卸载所有插件
    QZTC_SendPos(2913)
}

QZTC_cm_DirMatch(){  ;其他: 标出新文件, 隐藏相同者
    QZTC_SendPos(534)
}

QZTC_cm_Exchange(){  ;其他: 交换左右窗口
    QZTC_SendPos(531)
}

QZTC_cm_MatchSrc(){  ;其他: 目标 = 来源
    QZTC_SendPos(532)
}

QZTC_cm_ReloadSelThumbs(){  ;其他: 刷新选中文件的缩略图
    QZTC_SendPos(2918)
}

;并口 =========================================
QZTC_cm_DirectCableConnect(){  ;并口: 直接电缆连接
    QZTC_SendPos(2300)
}

QZTC_cm_NTinstallDriver(){  ;并口: 加载 NT 并口驱动程序
    QZTC_SendPos(2301)
}

QZTC_cm_NTremoveDriver(){  ;并口: 卸载 NT 并口驱动程序
    QZTC_SendPos(2302)
}

;打印 =========================================
QZTC_cm_PrintDir(){  ;打印: 打印文件列表
    QZTC_SendPos(2027)
}

QZTC_cm_PrintDirSub(){  ;打印: 打印文件列表(含子文件夹)
    QZTC_SendPos(2028)
}

QZTC_cm_PrintFile(){  ;打印: 打印文件内容
    QZTC_SendPos(504)
}

;选择 =========================================
QZTC_cm_SpreadSelection(){  ;选择: 选择一组文件
    QZTC_SendPos(521)
}

QZTC_cm_SelectBoth(){  ;选择: 选择一组: 文件和文件夹
    QZTC_SendPos(3311)
}

QZTC_cm_SelectFiles(){  ;选择: 选择一组: 仅文件
    QZTC_SendPos(3312)
}

QZTC_cm_SelectFolders(){  ;选择: 选择一组: 仅文件夹
    QZTC_SendPos(3313)
}

QZTC_cm_ShrinkSelection(){  ;选择: 不选一组文件
    QZTC_SendPos(522)
}

QZTC_cm_ClearFiles(){  ;选择: 不选一组: 仅文件
    QZTC_SendPos(3314)
}

QZTC_cm_ClearFolders(){  ;选择: 不选一组: 仅文件夹
    QZTC_SendPos(3315)
}

QZTC_cm_ClearSelCfg(){  ;选择: 不选一组: 文件和/或文件夹(视配置而定)
    QZTC_SendPos(3316)
}

QZTC_cm_SelectAll(){  ;选择: 全部选择: 文件和/或文件夹(视配置而定)
    QZTC_SendPos(523)
}

QZTC_cm_SelectAllBoth(){  ;选择: 全部选择: 文件和文件夹
    QZTC_SendPos(3301)
}

QZTC_cm_SelectAllFiles(){  ;选择: 全部选择: 仅文件
    QZTC_SendPos(3302)
}

QZTC_cm_SelectAllFolders(){  ;选择: 全部选择: 仅文件夹
    QZTC_SendPos(3303)
}

QZTC_cm_ClearAll(){  ;选择: 全部取消: 文件和文件夹
    QZTC_SendPos(524)
}

QZTC_cm_ClearAllFiles(){  ;选择: 全部取消: 仅文件
    QZTC_SendPos(3304)
}

QZTC_cm_ClearAllFolders(){  ;选择: 全部取消: 仅文件夹
    QZTC_SendPos(3305)
}

QZTC_cm_ClearAllCfg(){  ;选择: 全部取消: 文件和/或文件夹(视配置而定)
    QZTC_SendPos(3306)
}

QZTC_cm_ExchangeSelection(){  ;选择: 反向选择
    QZTC_SendPos(525)
}

QZTC_cm_ExchangeSelBoth(){  ;选择: 反向选择: 文件和文件夹
    QZTC_SendPos(3321)
}

QZTC_cm_ExchangeSelFiles(){  ;选择: 反向选择: 仅文件
    QZTC_SendPos(3322)
}

QZTC_cm_ExchangeSelFolders(){  ;选择: 反向选择: 仅文件夹
    QZTC_SendPos(3323)
}

QZTC_cm_SelectCurrentExtension(){  ;选择: 选择扩展名相同的文件
    QZTC_SendPos(527)
}

QZTC_cm_UnselectCurrentExtension(){  ;选择: 不选扩展名相同的文件
    QZTC_SendPos(528)
}

QZTC_cm_SelectCurrentName(){  ;选择: 选择文件名相同的文件
    QZTC_SendPos(541)
}

QZTC_cm_UnselectCurrentName(){  ;选择: 不选文件名相同的文件
    QZTC_SendPos(542)
}

QZTC_cm_SelectCurrentNameExt(){  ;选择: 选择文件名和扩展名相同的文件
    QZTC_SendPos(543)
}

QZTC_cm_UnselectCurrentNameExt(){  ;选择: 不选文件名和扩展名相同的文件
    QZTC_SendPos(544)
}

QZTC_cm_SelectCurrentPath(){  ;选择: 选择同一路径下的文件(展开文件夹+搜索文件)
    QZTC_SendPos(537)
}

QZTC_cm_UnselectCurrentPath(){  ;选择: 不选同一路径下的文件(展开文件夹+搜索文件)
    QZTC_SendPos(538)
}

QZTC_cm_RestoreSelection(){  ;选择: 恢复选择列表
    QZTC_SendPos(529)
}

QZTC_cm_SaveSelection(){  ;选择: 保存选择列表
    QZTC_SendPos(530)
}

QZTC_cm_SaveSelectionToFile(){  ;选择: 导出选择列表
    QZTC_SendPos(2031)
}

QZTC_cm_SaveSelectionToFileA(){  ;选择: 导出选择列表(ANSI)
    QZTC_SendPos(2041)
}

QZTC_cm_SaveSelectionToFileW(){  ;选择: 导出选择列表(Unicode)
    QZTC_SendPos(2042)
}

QZTC_cm_SaveDetailsToFile(){  ;选择: 导出详细信息
    QZTC_SendPos(2039)
}

QZTC_cm_SaveDetailsToFileA(){  ;选择: 导出详细信息(ANSI)
    QZTC_SendPos(2043)
}

QZTC_cm_SaveDetailsToFileW(){  ;选择: 导出详细信息(Unicode)
    QZTC_SendPos(2044)
}

QZTC_cm_LoadSelectionFromFile(){  ;选择: 导入选择列表(从文件)
    QZTC_SendPos(2032)
}

QZTC_cm_LoadSelectionFromClip(){  ;选择: 导入选择列表(从剪贴板)
    QZTC_SendPos(2033)
}

;安全 =========================================
QZTC_cm_EditPermissionInfo(){  ;安全: 设置权限(NTFS)
    QZTC_SendPos(2200)
}

QZTC_cm_EditAuditInfo(){  ;安全: 审核文件(NTFS)
    QZTC_SendPos(2201)
}

QZTC_cm_EditOwnerInfo(){  ;安全: 获取所有权(NTFS)
    QZTC_SendPos(2202)
}

;剪贴板 =========================================
QZTC_cm_CutToClipboard(){  ;剪贴板: 剪切选中的文件到剪贴板
    QZTC_SendPos(2007)
}

QZTC_cm_CopyToClipboard(){  ;剪贴板: 复制选中的文件到剪贴板
    QZTC_SendPos(2008)
}

QZTC_cm_PasteFromClipboard(){  ;剪贴板: 从剪贴板粘贴到当前文件夹
    QZTC_SendPos(2009)
}

QZTC_cm_CopyNamesToClip(){  ;剪贴板: 复制文件名
    QZTC_SendPos(2017)
}

QZTC_cm_CopyFullNamesToClip(){  ;剪贴板: 复制文件名及完整路径
    QZTC_SendPos(2018)
}

QZTC_cm_CopyNetNamesToClip(){  ;剪贴板: 复制文件名及网络路径
    QZTC_SendPos(2021)
}

QZTC_cm_CopySrcPathToClip(){  ;剪贴板: 复制来源路径
    QZTC_SendPos(2029)
}

QZTC_cm_CopyTrgPathToClip(){  ;剪贴板: 复制目标路径
    QZTC_SendPos(2030)
}

QZTC_cm_CopyFileDetailsToClip(){  ;剪贴板: 复制文件详细信息
    QZTC_SendPos(2036)
}

QZTC_cm_CopyFpFileDetailsToClip(){  ;剪贴板: 复制文件详细信息及完整路径
    QZTC_SendPos(2037)
}

QZTC_cm_CopyNetFileDetailsToClip(){  ;剪贴板: 复制文件详细信息及网络路径
    QZTC_SendPos(2038)
}

;FTP =========================================
QZTC_cm_FtpConnect(){  ;FTP: FTP 连接
    QZTC_SendPos(550)
}

QZTC_cm_FtpNew(){  ;FTP: 新建 FTP 连接
    QZTC_SendPos(551)
}

QZTC_cm_FtpDisconnect(){  ;FTP: 断开 FTP 连接
    QZTC_SendPos(552)
}

QZTC_cm_FtpHiddenFiles(){  ;FTP: 显示隐藏的FTP文件
    QZTC_SendPos(553)
}

QZTC_cm_FtpAbort(){  ;FTP: 中止当前 FTP 命令
    QZTC_SendPos(554)
}

QZTC_cm_FtpResumeDownload(){  ;FTP: 续传
    QZTC_SendPos(555)
}

QZTC_cm_FtpSelectTransferMode(){  ;FTP: 选择传输模式
    QZTC_SendPos(556)
}

QZTC_cm_FtpAddToList(){  ;FTP: 添加到下载列表
    QZTC_SendPos(557)
}

QZTC_cm_FtpDownloadList(){  ;FTP: 按列表下载
    QZTC_SendPos(558)
}

;导航 =========================================
QZTC_cm_GotoPreviousDir(){  ;导航: 后退
    QZTC_SendPos(570)
}

QZTC_cm_GotoNextDir(){  ;导航: 前进
    QZTC_SendPos(571)
}

QZTC_cm_DirectoryHistory(){  ;导航: 文件夹历史记录
    Vim_HotkeyCount := 0
    QZTC_SendPos(572)
}

QZTC_cm_GotoPreviousLocalDir(){  ;导航: 后退(非 FTP)
    QZTC_SendPos(573)
}

QZTC_cm_GotoNextLocalDir(){  ;导航: 前进(非 FTP)
    QZTC_SendPos(574)
}

QZTC_cm_DirectoryHotlist(){  ;导航: 常用文件夹
    QZTC_SendPos(526)
}

QZTC_cm_GoToRoot(){  ;导航: 转到根文件夹
    QZTC_SendPos(2001)
}

QZTC_cm_GoToParent(){  ;导航: 转到上层文件夹
    QZTC_SendPos(2002)
}

QZTC_cm_GoToDir(){  ;导航: 打开光标处的文件夹或压缩包
    QZTC_SendPos(2003)
}

QZTC_cm_OpenDesktop(){  ;导航: 桌面
    QZTC_SendPos(2121)
}

QZTC_cm_OpenDrives(){  ;导航: 我的电脑
    QZTC_SendPos(2122)
}

QZTC_cm_OpenControls(){  ;导航: 控制面板
    QZTC_SendPos(2123)
}

QZTC_cm_OpenFonts(){  ;导航: 字体
    QZTC_SendPos(2124)
}

QZTC_cm_OpenNetwork(){  ;导航: 网上邻居
    QZTC_SendPos(2125)
}

QZTC_cm_OpenPrinters(){  ;导航: 打印机
    QZTC_SendPos(2126)
}

QZTC_cm_OpenRecycled(){  ;导航: 回收站
    QZTC_SendPos(2127)
}

QZTC_cm_CDtree(){  ;导航: 更改文件夹
    QZTC_SendPos(500)
}

QZTC_cm_TransferLeft(){  ;导航: 在左窗口打开光标处的文件夹或压缩包
    QZTC_SendPos(2024)
}

QZTC_cm_TransferRight(){  ;导航: 在右窗口打开光标处的文件夹或压缩包
    QZTC_SendPos(2025)
}

QZTC_cm_EditPath(){  ;导航: 编辑来源窗口的路径
    QZTC_SendPos(2912)
}

QZTC_cm_GoToFirstFile(){  ;导航: 光标移到列表中的第一个文件
    QZTC_SendPos(2050)
}

QZTC_cm_GotoNextDrive(){  ;导航: 转到下一个驱动器
    QZTC_SendPos(2051)
}

QZTC_cm_GotoPreviousDrive(){  ;导航: 转到上一个驱动器
    QZTC_SendPos(2052)
}

QZTC_cm_GotoNextSelected(){  ;导航: 转到下一个选中的文件
    QZTC_SendPos(2053)
}

QZTC_cm_GotoPrevSelected(){  ;导航: 转到上一个选中的文件
    QZTC_SendPos(2054)
}

QZTC_cm_GotoDriveA(){  ;导航: 转到驱动器 A
    QZTC_SendPos(2061)
}

QZTC_cm_GotoDriveC(){  ;导航: 转到驱动器 C
    QZTC_SendPos(2063)
}

QZTC_cm_GotoDriveD(){  ;导航: 转到驱动器 D
    QZTC_SendPos(2064)
}

QZTC_cm_GotoDriveE(){  ;导航: 转到驱动器 E
    QZTC_SendPos(2065)
}

QZTC_cm_GotoDriveF(){  ;导航: 可自定义其他驱动器
    QZTC_SendPos(2066)
}

QZTC_cm_GotoDriveZ(){  ;导航: 最多 26 个
    QZTC_SendPos(2086)
}

;帮助 =========================================
QZTC_cm_HelpIndex(){  ;帮助: 帮助索引
    QZTC_SendPos(610)
}

QZTC_cm_Keyboard(){  ;帮助: 快捷键列表
    QZTC_SendPos(620)
}

QZTC_cm_Register(){  ;帮助: 注册信息
    QZTC_SendPos(630)
}

QZTC_cm_VisitHomepage(){  ;帮助: 访问 Totalcmd 网站
    QZTC_SendPos(640)
}

QZTC_cm_About(){  ;帮助: 关于 Total Commander
    QZTC_SendPos(690)
}

;窗口 =========================================
QZTC_cm_Exit(){  ;窗口: 退出 Total Commander
    QZTC_SendPos(24340)
}

QZTC_cm_Minimize(){  ;窗口: 最小化 Total Commander
    QZTC_SendPos(2000)
}

QZTC_cm_Maximize(){  ;窗口: 最大化 Total Commander
    QZTC_SendPos(2015)
}

QZTC_cm_Restore(){  ;窗口: 恢复正常大小
    QZTC_SendPos(2016)
}

;命令行 =========================================
QZTC_cm_ClearCmdLine(){  ;命令行: 清除命令行
    QZTC_SendPos(2004)
}

QZTC_cm_NextCommand(){  ;命令行: 下一条命令
    QZTC_SendPos(2005)
}

QZTC_cm_PrevCommand(){  ;命令行: 上一条命令
    QZTC_SendPos(2006)
}

QZTC_cm_AddPathToCmdline(){  ;命令行: 将路径复制到命令行
    QZTC_SendPos(2019)
}

;工具 =========================================
QZTC_cm_MultiRenameFiles(){  ;工具: 批量重命名
    QZTC_SendPos(2400)
}

QZTC_cm_SysInfo(){  ;工具: 系统信息
    QZTC_SendPos(506)
}

QZTC_cm_OpenTransferManager(){  ;工具: 后台传输管理器
    QZTC_SendPos(559)
}

QZTC_cm_SearchFor(){  ;工具: 搜索文件
    QZTC_SendPos(501)
}

QZTC_cm_SearchStandalone(){  ;工具: 在单独进程搜索文件
    QZTC_SendPos(545)
}

QZTC_cm_FileSync(){  ;工具: 同步文件夹
    QZTC_SendPos(2020)
}

QZTC_cm_Associate(){  ;工具: 文件关联
    QZTC_SendPos(507)
}

QZTC_cm_InternalAssociate(){  ;工具: 定义内部关联
    QZTC_SendPos(519)
}

QZTC_cm_CompareFilesByContent(){  ;工具: 比较文件内容
    QZTC_SendPos(2022)
}

QZTC_cm_IntCompareFilesByContent(){  ;工具: 使用内部比较程序
    QZTC_SendPos(2040)
}

QZTC_cm_CommandBrowser(){  ;工具: 浏览内部命令
    QZTC_SendPos(2924)
}

;视图 =========================================
QZTC_cm_VisButtonbar(){  ;视图: 显示/隐藏: 工具栏
    QZTC_SendPos(2901)
}

QZTC_cm_VisDriveButtons(){  ;视图: 显示/隐藏: 驱动器按钮
    QZTC_SendPos(2902)
}

QZTC_cm_VisTwoDriveButtons(){  ;视图: 显示/隐藏: 两个驱动器按钮栏
    QZTC_SendPos(2903)
}

QZTC_cm_VisFlatDriveButtons(){  ;视图: 切换: 平坦/立体驱动器按钮
    QZTC_SendPos(2904)
}

QZTC_cm_VisFlatInterface(){  ;视图: 切换: 平坦/立体用户界面
    QZTC_SendPos(2905)
}

QZTC_cm_VisDriveCombo(){  ;视图: 显示/隐藏: 驱动器列表
    QZTC_SendPos(2906)
}

QZTC_cm_VisCurDir(){  ;视图: 显示/隐藏: 当前文件夹
    QZTC_SendPos(2907)
}

QZTC_cm_VisBreadCrumbs(){  ;视图: 显示/隐藏: 路径导航栏
    QZTC_SendPos(2926)
}

QZTC_cm_VisTabHeader(){  ;视图: 显示/隐藏: 排序制表符
    QZTC_SendPos(2908)
}

QZTC_cm_VisStatusbar(){  ;视图: 显示/隐藏: 状态栏
    QZTC_SendPos(2909)
}

QZTC_cm_VisCmdLine(){  ;视图: 显示/隐藏: 命令行
    QZTC_SendPos(2910)
}

QZTC_cm_VisKeyButtons(){  ;视图: 显示/隐藏: 功能键按钮
    QZTC_SendPos(2911)
}

QZTC_cm_ShowHint(){  ;视图: 显示文件提示
    QZTC_SendPos(2914)
}

QZTC_cm_ShowQuickSearch(){  ;视图: 显示快速搜索窗口
    QZTC_SendPos(2915)
}

QZTC_cm_SwitchLongNames(){  ;视图: 开启/关闭: 长文件名显示
    QZTC_SendPos(2010)
}

QZTC_cm_RereadSource(){  ;视图: 刷新来源窗口
    QZTC_SendPos(540)
}

QZTC_cm_ShowOnlySelected(){  ;视图: 仅显示选中的文件
    QZTC_SendPos(2023)
}

QZTC_cm_SwitchHidSys(){  ;视图: 开启/关闭: 隐藏或系统文件显示
    QZTC_SendPos(2011)
}

QZTC_cm_Switch83Names(){  ;视图: 开启/关闭: 8.3 式文件名小写显示
    QZTC_SendPos(2013)
}

QZTC_cm_SwitchDirSort(){  ;视图: 开启/关闭: 文件夹按名称排序
    QZTC_SendPos(2012)
}

QZTC_cm_DirBranch(){  ;视图: 展开所有文件夹
    QZTC_SendPos(2026)
}

QZTC_cm_DirBranchSel(){  ;视图: 只展开选中的文件夹
    QZTC_SendPos(2046)
}

QZTC_cm_50Percent(){  ;视图: 窗口分隔栏位于 50%
    QZTC_SendPos(909)
}

QZTC_cm_100Percent(){  ;视图: 窗口分隔栏位于 100%
    QZTC_SendPos(910)
}

QZTC_cm_VisDirTabs(){  ;视图: 显示/隐藏: 文件夹标签
    QZTC_SendPos(2916)
}

QZTC_cm_VisXPThemeBackground(){  ;视图: 显示/隐藏: XP 主题背景
    QZTC_SendPos(2923)
}

QZTC_cm_SwitchOverlayIcons(){  ;视图: 开启/关闭: 叠置图标显示
    QZTC_SendPos(2917)
}

QZTC_cm_VisHistHotButtons(){  ;视图: 显示/隐藏: 文件夹历史记录和常用文件夹按钮
    QZTC_SendPos(2919)
}

QZTC_cm_SwitchWatchDirs(){  ;视图: 启用/禁用: 文件夹自动刷新
    QZTC_SendPos(2921)
}

QZTC_cm_SwitchIgnoreList(){  ;视图: 启用/禁用: 自定义隐藏文件
    QZTC_SendPos(2922)
}

QZTC_cm_SwitchX64Redirection(){  ;视图: 开启/关闭: 32 位 system32 目录重定向(64 位 Windows)
    QZTC_SendPos(2925)
}

QZTC_cm_SeparateTreeOff(){  ;视图: 关闭独立文件夹树面板
    QZTC_SendPos(3200)
}

QZTC_cm_SeparateTree1(){  ;视图: 一个独立文件夹树面板
    QZTC_SendPos(3201)
}

QZTC_cm_SeparateTree2(){  ;视图: 两个独立文件夹树面板
    QZTC_SendPos(3202)
}

QZTC_cm_SwitchSeparateTree(){  ;视图: 切换独立文件夹树面板状态
    QZTC_SendPos(3203)
}

QZTC_cm_ToggleSeparateTree1(){  ;视图: 开启/关闭: 一个独立文件夹树面板
    QZTC_SendPos(3204)
}

QZTC_cm_ToggleSeparateTree2(){  ;视图: 开启/关闭: 两个独立文件夹树面板
    QZTC_SendPos(3205)
}

;用户 =========================================
QZTC_cm_UserMenu1(){  ;用户: 用户菜单 1
    QZTC_SendPos(701)
}

QZTC_cm_UserMenu2(){  ;用户: 用户菜单 2
    QZTC_SendPos(702)
}

QZTC_cm_UserMenu3(){  ;用户: 用户菜单 3
    QZTC_SendPos(703)
}

QZTC_cm_UserMenu4(){  ;用户: 用户菜单 4
    QZTC_SendPos(704)
}

QZTC_cm_UserMenu5(){  ;用户: 用户菜单5
    QZTC_SendPos(705)
}

QZTC_cm_UserMenu6(){  ;用户: 用户菜单6
    QZTC_SendPos(706)
}

QZTC_cm_UserMenu7(){  ;用户: 用户菜单7
    QZTC_SendPos(707)
}

QZTC_cm_UserMenu8(){  ;用户: 用户菜单8
    QZTC_SendPos(708)
}

QZTC_cm_UserMenu9(){  ;用户: 用户菜单9
    QZTC_SendPos(709)
}

QZTC_cm_UserMenu10(){  ;用户: 可定义其他用户菜单
    QZTC_SendPos(710)
}

;标签 =========================================
QZTC_cm_OpenNewTab(){  ;标签: 新建标签
    QZTC_SendPos(3001)
}

QZTC_cm_OpenNewTabBg(){  ;标签: 新建标签(在后台)
    QZTC_SendPos(3002)
}

QZTC_cm_OpenDirInNewTab(){  ;标签: 新建标签(并打开光标处的文件夹)
    QZTC_SendPos(3003)
}

QZTC_cm_OpenDirInNewTabOther(){  ;标签: 新建标签(在另一窗口打开文件夹)
    QZTC_SendPos(3004)
}

QZTC_cm_SwitchToNextTab(){  ;标签: 下一个标签(Ctrl+Tab)
    QZTC_SendPos(3005)
}

QZTC_cm_SwitchToPreviousTab(){  ;标签: 上一个标签(Ctrl+Shift+Tab)
    QZTC_SendPos(3006)
}

QZTC_cm_CloseCurrentTab(){  ;标签: 关闭当前标签
    QZTC_SendPos(3007)
}

QZTC_cm_CloseAllTabs(){  ;标签: 关闭所有标签
    QZTC_SendPos(3008)
    SetTimer TC_Timer_WaitMenuPop_CloseAllTabs
    return
    
    TC_Timer_WaitMenuPop_CloseAllTabs:
        winget, menupop, , ahk_class #32770
        if menupop{
            SetTimer, TC_Timer_WaitMenuPop_CloseAllTabs , Off
            send,{enter}
        }
    return
}

QZTC_cm_DirTabsShowMenu(){  ;标签: 显示标签菜单
    QZTC_SendPos(3009)
}

QZTC_cm_ToggleLockCurrentTab(){  ;标签: 锁定/解锁当前标签
    QZTC_SendPos(3010)
}

QZTC_cm_ToggleLockDcaCurrentTab(){  ;标签: 锁定/解锁当前标签(可更改文件夹)
    QZTC_SendPos(3012)
}

QZTC_cm_ExchangeWithTabs(){  ;标签: 交换左右窗口及其标签
    QZTC_SendPos(535)
}

QZTC_cm_GoToLockedDir(){  ;标签: 转到锁定标签的根文件夹
    QZTC_SendPos(3011)
}

QZTC_cm_SrcActivateTab1(){  ;标签: 来源窗口: 激活标签 1
    QZTC_SendPos(5001)
}

QZTC_cm_SrcActivateTab2(){  ;标签: 来源窗口: 激活标签 2
    QZTC_SendPos(5002)
}

QZTC_cm_SrcActivateTab3(){  ;标签: ...
    QZTC_SendPos(5003)
}

QZTC_cm_SrcActivateTab4(){  ;标签: 最多 99 个
    QZTC_SendPos(5004)
}

QZTC_cm_SrcActivateTab5(){  ;标签: 5
    QZTC_SendPos(5005)
}

QZTC_cm_SrcActivateTab6(){  ;标签: 6
    QZTC_SendPos(5006)
}

QZTC_cm_SrcActivateTab7(){  ;标签: 7
    QZTC_SendPos(5007)
}

QZTC_cm_SrcActivateTab8(){  ;标签: 8
    QZTC_SendPos(5008)
}

QZTC_cm_SrcActivateTab9(){  ;标签: 9
    QZTC_SendPos(5009)
}

QZTC_cm_SrcActivateTab10(){  ;标签: 0
    QZTC_SendPos(5010)
}

QZTC_cm_TrgActivateTab1(){  ;标签: 目标窗口: 激活标签 1
    QZTC_SendPos(5101)
}

QZTC_cm_TrgActivateTab2(){  ;标签: 目标窗口: 激活标签 2
    QZTC_SendPos(5102)
}

QZTC_cm_TrgActivateTab3(){  ;标签: ...
    QZTC_SendPos(5103)
}

QZTC_cm_TrgActivateTab4(){  ;标签: 最多 99 个
    QZTC_SendPos(5104)
}

QZTC_cm_TrgActivateTab5(){  ;标签: 5
    QZTC_SendPos(5105)
}

QZTC_cm_TrgActivateTab6(){  ;标签: 6
    QZTC_SendPos(5106)
}

QZTC_cm_TrgActivateTab7(){  ;标签: 7
    QZTC_SendPos(5107)
}

QZTC_cm_TrgActivateTab8(){  ;标签: 8
    QZTC_SendPos(5108)
}

QZTC_cm_TrgActivateTab9(){  ;标签: 9
    QZTC_SendPos(5109)
}

QZTC_cm_TrgActivateTab10(){  ;标签: 0
    QZTC_SendPos(5110)
}

QZTC_cm_LeftActivateTab1(){  ;标签: 左窗口: 激活标签 1
    QZTC_SendPos(5201)
}

QZTC_cm_LeftActivateTab2(){  ;标签: 左窗口: 激活标签 2
    QZTC_SendPos(5202)
}

QZTC_cm_LeftActivateTab3(){  ;标签: ...
    QZTC_SendPos(5203)
}

QZTC_cm_LeftActivateTab4(){  ;标签: 最多 99 个
    QZTC_SendPos(5204)
}

QZTC_cm_LeftActivateTab5(){  ;标签: 5
    QZTC_SendPos(5205)
}

QZTC_cm_LeftActivateTab6(){  ;标签: 6
    QZTC_SendPos(5206)
}

QZTC_cm_LeftActivateTab7(){  ;标签: 7
    QZTC_SendPos(5207)
}

QZTC_cm_LeftActivateTab8(){  ;标签: 8
    QZTC_SendPos(5208)
}

QZTC_cm_LeftActivateTab9(){  ;标签: 9
    QZTC_SendPos(5209)
}

QZTC_cm_LeftActivateTab10(){  ;0
    QZTC_SendPos(5210)
}

QZTC_cm_RightActivateTab1(){  ;右窗口: 激活标签 1
    QZTC_SendPos(5301)
}

QZTC_cm_RightActivateTab2(){  ;右窗口: 激活标签 2
    QZTC_SendPos(5302)
}

QZTC_cm_RightActivateTab3(){  ;...
    QZTC_SendPos(5303)
}

QZTC_cm_RightActivateTab4(){  ;最多 99 个
    QZTC_SendPos(5304)
}

QZTC_cm_RightActivateTab5(){  ;5
    QZTC_SendPos(5305)
}

QZTC_cm_RightActivateTab6(){  ;6
    QZTC_SendPos(5306)
}

QZTC_cm_RightActivateTab7(){  ;7
    QZTC_SendPos(5307)
}

QZTC_cm_RightActivateTab8(){  ;8
    QZTC_SendPos(5308)
}

QZTC_cm_RightActivateTab9(){  ;9
    QZTC_SendPos(5309)
}

QZTC_cm_RightActivateTab10(){  ;0
    QZTC_SendPos(5310)
}

;排序 =========================================
QZTC_cm_SrcSortByCol1(){  ;来源窗口: 按第 1 列排序
    QZTC_SendPos(6001)
}

QZTC_cm_SrcSortByCol2(){  ;来源窗口: 按第 2 列排序
    QZTC_SendPos(6002)
}

QZTC_cm_SrcSortByCol3(){  ;...
    QZTC_SendPos(6003)
}

QZTC_cm_SrcSortByCol4(){  ;最多 99 列
    QZTC_SendPos(6004)
}

QZTC_cm_SrcSortByCol5(){  ;5
    QZTC_SendPos(6005)
}

QZTC_cm_SrcSortByCol6(){  ;6
    QZTC_SendPos(6006)
}

QZTC_cm_SrcSortByCol7(){  ;7
    QZTC_SendPos(6007)
}

QZTC_cm_SrcSortByCol8(){  ;8
    QZTC_SendPos(6008)
}

QZTC_cm_SrcSortByCol9(){  ;9
    QZTC_SendPos(6009)
}

QZTC_cm_SrcSortByCol10(){  ;0
    QZTC_SendPos(6010)
}

QZTC_cm_SrcSortByCol99(){  ;9
    QZTC_SendPos(6099)
}

QZTC_cm_TrgSortByCol1(){  ;目标窗口: 按第 1 列排序
    QZTC_SendPos(6101)
}

QZTC_cm_TrgSortByCol2(){  ;目标窗口: 按第 2 列排序
    QZTC_SendPos(6102)
}

QZTC_cm_TrgSortByCol3(){  ;...
    QZTC_SendPos(6103)
}

QZTC_cm_TrgSortByCol4(){  ;最多 99 列
    QZTC_SendPos(6104)
}

QZTC_cm_TrgSortByCol5(){  ;5
    QZTC_SendPos(6105)
}

QZTC_cm_TrgSortByCol6(){  ;6
    QZTC_SendPos(6106)
}

QZTC_cm_TrgSortByCol7(){  ;7
    QZTC_SendPos(6107)
}

QZTC_cm_TrgSortByCol8(){  ;8
    QZTC_SendPos(6108)
}

QZTC_cm_TrgSortByCol9(){  ;9
    QZTC_SendPos(6109)
}

QZTC_cm_TrgSortByCol10(){  ;0
    QZTC_SendPos(6110)
}

QZTC_cm_TrgSortByCol99(){  ;9
    QZTC_SendPos(6199)
}

QZTC_cm_LeftSortByCol1(){  ;左窗口: 按第 1 列排序
    QZTC_SendPos(6201)
}

QZTC_cm_LeftSortByCol2(){  ;左窗口: 按第 2 列排序
    QZTC_SendPos(6202)
}

QZTC_cm_LeftSortByCol3(){  ;...
    QZTC_SendPos(6203)
}

QZTC_cm_LeftSortByCol4(){  ;最多 99 列
    QZTC_SendPos(6204)
}

QZTC_cm_LeftSortByCol5(){  ;5
    QZTC_SendPos(6205)
}

QZTC_cm_LeftSortByCol6(){  ;6
    QZTC_SendPos(6206)
}

QZTC_cm_LeftSortByCol7(){  ;7
    QZTC_SendPos(6207)
}

QZTC_cm_LeftSortByCol8(){  ;8
    QZTC_SendPos(6208)
}

QZTC_cm_LeftSortByCol9(){  ;9
    QZTC_SendPos(6209)
}

QZTC_cm_LeftSortByCol10(){  ;0
    QZTC_SendPos(6210)
}

QZTC_cm_LeftSortByCol99(){  ;9
    QZTC_SendPos(6299)
}

QZTC_cm_RightSortByCol1(){  ;右窗口: 按第 1 列排序
    QZTC_SendPos(6301)
}

QZTC_cm_RightSortByCol2(){  ;右窗口: 按第 2 列排序
    QZTC_SendPos(6302)
}

QZTC_cm_RightSortByCol3(){  ;...
    QZTC_SendPos(6303)
}

QZTC_cm_RightSortByCol4(){  ;最多 99 列
    QZTC_SendPos(6304)
}

QZTC_cm_RightSortByCol5(){  ;5
    QZTC_SendPos(6305)
}

QZTC_cm_RightSortByCol6(){  ;6
    QZTC_SendPos(6306)
}

QZTC_cm_RightSortByCol7(){  ;7
    QZTC_SendPos(6307)
}

QZTC_cm_RightSortByCol8(){  ;8
    QZTC_SendPos(6308)
}

QZTC_cm_RightSortByCol9(){  ;9
    QZTC_SendPos(6309)
}

QZTC_cm_RightSortByCol10(){  ;0
    QZTC_SendPos(6310)
}

QZTC_cm_RightSortByCol99(){  ;9
    QZTC_SendPos(6399)
}

;自定义列视图 =========================================
QZTC_cm_SrcCustomView1(){  ;来源窗口: 自定义列视图 1
    QZTC_SendPos(271)
}

QZTC_cm_SrcCustomView2(){  ;来源窗口: 自定义列视图 2
    QZTC_SendPos(272)
}

QZTC_cm_SrcCustomView3(){  ;...
    QZTC_SendPos(273)
}

QZTC_cm_SrcCustomView4(){  ;最多 29 个
    QZTC_SendPos(274)
}

QZTC_cm_SrcCustomView5(){  ;5
    QZTC_SendPos(275)
}

QZTC_cm_SrcCustomView6(){  ;6
    QZTC_SendPos(276)
}

QZTC_cm_SrcCustomView7(){  ;7
    QZTC_SendPos(277)
}

QZTC_cm_SrcCustomView8(){  ;8
    QZTC_SendPos(278)
}

QZTC_cm_SrcCustomView9(){  ;9
    QZTC_SendPos(279)
}

QZTC_cm_LeftCustomView1(){  ;左窗口: 自定义列视图 1
    QZTC_SendPos(710)
}

QZTC_cm_LeftCustomView2(){  ;左窗口: 自定义列视图 2
    QZTC_SendPos(72)
}

QZTC_cm_LeftCustomView3(){  ;...
    QZTC_SendPos(73)
}

QZTC_cm_LeftCustomView4(){  ;最多 29 个
    QZTC_SendPos(74)
}

QZTC_cm_LeftCustomView5(){  ;5
    QZTC_SendPos(75)
}

QZTC_cm_LeftCustomView6(){  ;6
    QZTC_SendPos(76)
}

QZTC_cm_LeftCustomView7(){  ;7
    QZTC_SendPos(77)
}

QZTC_cm_LeftCustomView8(){  ;8
    QZTC_SendPos(78)
}

QZTC_cm_LeftCustomView9(){  ;9
    QZTC_SendPos(79)
}

QZTC_cm_RightCustomView1(){  ;右窗口: 自定义列视图 1
    QZTC_SendPos(171)
}

QZTC_cm_RightCustomView2(){  ;右窗口: 自定义列视图 2
    QZTC_SendPos(172)
}

QZTC_cm_RightCustomView3(){  ;...
    QZTC_SendPos(173)
}

QZTC_cm_RightCustomView4(){  ;最多 29 个
    QZTC_SendPos(174)
}

QZTC_cm_RightCustomView5(){  ;5
    QZTC_SendPos(175)
}

QZTC_cm_RightCustomView6(){  ;6
    QZTC_SendPos(176)
}

QZTC_cm_RightCustomView7(){  ;7
    QZTC_SendPos(177)
}

QZTC_cm_RightCustomView8(){  ;8
    QZTC_SendPos(178)
}

QZTC_cm_RightCustomView9(){  ;9
    QZTC_SendPos(179)
}

QZTC_cm_SrcNextCustomView(){  ;来源窗口: 下一个自定义视图
    QZTC_SendPos(5501)
}

QZTC_cm_SrcPrevCustomView(){  ;来源窗口: 上一个自定义视图
    QZTC_SendPos(5502)
}

QZTC_cm_TrgNextCustomView(){  ;目标窗口: 下一个自定义视图
    QZTC_SendPos(5503)
}

QZTC_cm_TrgPrevCustomView(){  ;目标窗口: 上一个自定义视图
    QZTC_SendPos(5504)
}

QZTC_cm_LeftNextCustomView(){  ;左窗口: 下一个自定义视图
    QZTC_SendPos(5505)
}

QZTC_cm_LeftPrevCustomView(){  ;左窗口: 上一个自定义视图
    QZTC_SendPos(5506)
}

QZTC_cm_RightNextCustomView(){  ;右窗口: 下一个自定义视图
    QZTC_SendPos(5507)
}

QZTC_cm_RightPrevCustomView(){  ;右窗口: 上一个自定义视图
    QZTC_SendPos(5508)
}

QZTC_cm_LoadAllOnDemandFields(){  ;所有文件都按需加载备注
    QZTC_SendPos(5512)
}

QZTC_cm_LoadSelOnDemandFields(){  ;仅选中的文件按需加载备注
    QZTC_SendPos(5513)
}

QZTC_cm_ContentStopLoadFields(){  ;停止后台加载备注
    QZTC_SendPos(5514)
}
